8.9.0
Project
- E2E tests immigrate to e2e-v2.
 - Support JDK 16 and 17.
 - Add Docker images for arm64 architecture.
 
OAP Server
- Add component definition for 
Jackson. - Fix that zipkin-receiver plugin is not packaged into dist.
 - Upgrade Armeria to 1.12, upgrade OpenSearch test version to 1.1.0.
 - Add component definition for 
Apache-Kylin. - Enhance 
getgeneration mechanism of OAL engine, support map type of source’s field. - Add 
tag(Map) into All, Service, ServiceInstance and Endpoint sources. - Fix 
funcParamExpressionandliteralExpressioncan’t be used in the same aggregation function. - Support cast statement in the OAL core engine.
 - Support 
(str->long)and(long)for string to long cast statement. - Support 
(str->int)and(int)for string to int cast statement. - Support Long literal number in the OAL core engine.
 - Support literal 
stringas parameter of aggregation function. - Add 
attributeExpressionandattributeExpressionSegmentin the OAL grammar tree to supportmaptype for the attribute expression. - Refactor the OAL compiler context to improve readability.
 - Fix wrong generated codes of 
hashCodeandremoteHashCodemethods for numeric fields. - Support 
!= nullin OAL engine. - Add 
Message Queue Consuming Countmetric for MQ consuming service and endpoint. - Add 
Message Queue Avg Consuming Latencymetric for MQ consuming service and endpoint. - Support 
-Infas bucket in the meter system. - Fix setting wrong field when combining 
Events. - Support search browser service.
 - Add 
getProfileTaskLogsto profile query protocol. - Set 
SW_KAFKA_FETCHER_ENABLE_NATIVE_PROTO_LOG,SW_KAFKA_FETCHER_ENABLE_NATIVE_JSON_LOGdefaulttrue. - Fix unexpected deleting due to TTL mechanism bug for H2, MySQL, TiDB and PostgreSQL.
 - Add a GraphQL query to get OAP version, display OAP version in startup message and error logs.
 - Fix TimeBucket missing in H2, MySQL, TiDB and PostgreSQL bug, which causes TTL doesn’t work for 
service_traffic. - Fix TimeBucket missing in ElasticSearch and provide compatible 
storage2Entityfor previous versions. - Fix ElasticSearch implementation of 
queryMetricsValuesandreadLabeledMetricsValuesdoesn’t fill default values when no available data in the ElasticSearch server. - Fix config yaml data type conversion bug when meets special character like !.
 - Optimize metrics of minute dimensionality persistence. The value of metrics, which has declaration of the default value and current value equals the default value logically, the whole row wouldn’t be pushed into database.
 - Fix 
maxfunction in OAL doesn’t support negative long. - Add 
MicroBenchmodule to make it easier for developers to write JMH test. - Upgrade Kubernetes Java client to 14.0.0, supports GCP token refreshing and fixes some bugs.
 - Change 
SO11Ymetricenvoy_als_in_countto calculate the ALS message count. - Support Istio 
1.10.3,1.11.4,1.12.0release.(Tested through e2e) - Add filter mechanism in MAL core to filter metrics.
 - Fix concurrency bug in MAL 
increase-related calculation. - Fix a null pointer bug when building 
SampleFamily. - Fix the so11y latency of persistence execution latency not correct in ElasticSearch storage.
 - Add 
MeterReportServicecollectBatchmethod. - Add OpenSearch 1.2.0 to test and verify it works.
 - Upgrade grpc-java to 1.42.1 and protoc to 3.17.3 to allow using native Mac osx-aarch_64 artifacts.
 - Fix TopologyQuery.loadEndpointRelation bug.
 - Support using IoTDB as a new storage option.
 - Add customized envoy ALS protocol receiver for satellite transmit batch data.
 - Remove 
logbackdependencies in IoTDB plugin. - Fix 
StorageModuleElasticsearchProviderdoesn’t watch ontrustStorePath. - Fix a wrong check about entity if GraphQL at the endpoint relation level.
 
UI
- Optimize endpoint dependency.
 - Show service name by hovering nodes in the sankey chart.
 - Add Apache Kylin logo.
 - Add ClickHouse logo.
 - Optimize the style and add tips for log conditions.
 - Fix the condition for trace table.
 - Optimize profile functions.
 - Implement a reminder to clear cache for dashboard templates.
 - Support +/- hh:mm in TimeZone setting.
 - Optimize global settings.
 - Fix current endpoint for endpoint dependency.
 - Add version in the global settings popup.
 - Optimize Log page style.
 - Avoid some abnormal settings.
 - Fix query condition of events.
 
Documentation
- Enhance documents about the data report and query protocols.
 - Restructure documents about receivers and fetchers.
- Remove general receiver and fetcher docs
 - Add more specific menu with docs to help users to find documents easier.
 
 - Add a guidance doc about the logic endpoint.
 - Link Satellite as Load Balancer documentation and compatibility with satellite.
 
All issues and pull requests are here