This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch ttl-bug in repository https://gitbox.apache.org/repos/asf/skywalking.git
commit 5a11db4fb81c07b3e3345630263363fb9bd591f8 Author: Wu Sheng <[email protected]> AuthorDate: Tue Oct 26 17:00:06 2021 +0800 Fix TimeBucket missing in H2, MySQL, TiDB and PostgreSQL bug --- CHANGES.md | 36 ++++++++++++---------- .../analysis/manual/service/ServiceTraffic.java | 4 +-- 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 831aecb..6a2623c 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -4,26 +4,27 @@ Release Notes. 8.9.0 ------------------ + #### Project * Replace e2e cases to e2e-v2: - - Simple: JDK, Auth, SSL, mTLS - - Lua Nginx - - SelfObservability - - Gateway - - Meter - - Nodejs - - PHP - - VM: Prometheus Node Exporter, Zabbix - - go2sky - - log - - Python - - Storage - - Cluster - - Event - - Profile - - Kafka: Base, Meter, Log, Profile - - Client-JS + - Simple: JDK, Auth, SSL, mTLS + - Lua Nginx + - SelfObservability + - Gateway + - Meter + - Nodejs + - PHP + - VM: Prometheus Node Exporter, Zabbix + - go2sky + - log + - Python + - Storage + - Cluster + - Event + - Profile + - Kafka: Base, Meter, Log, Profile + - Client-JS * Support JDK 16 and 17. #### OAP Server @@ -54,6 +55,7 @@ Release Notes. * Set `SW_KAFKA_FETCHER_ENABLE_NATIVE_PROTO_LOG`, `SW_KAFKA_FETCHER_ENABLE_NATIVE_JSON_LOG` default `true`. * 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`. #### UI diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/service/ServiceTraffic.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/service/ServiceTraffic.java index d5ab808..74b3865 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/service/ServiceTraffic.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/service/ServiceTraffic.java @@ -80,7 +80,6 @@ public class ServiceTraffic extends Metrics { public void deserialize(final RemoteData remoteData) { setName(remoteData.getDataStrings(0)); setNodeType(NodeType.valueOf(remoteData.getDataIntegers(0))); - // Time bucket is not a part of persistent, but still is required in the first time insert. setTimeBucket(remoteData.getDataLongs(0)); } @@ -89,7 +88,6 @@ public class ServiceTraffic extends Metrics { final RemoteData.Builder builder = RemoteData.newBuilder(); builder.addDataStrings(name); builder.addDataIntegers(nodeType.value()); - // Time bucket is not a part of persistent, but still is required in the first time insert. builder.addDataLongs(getTimeBucket()); return builder; } @@ -102,6 +100,7 @@ public class ServiceTraffic extends Metrics { serviceTraffic.setName((String) dbMap.get(NAME)); serviceTraffic.setNodeType(NodeType.valueOf(((Number) dbMap.get(NODE_TYPE)).intValue())); serviceTraffic.setGroup((String) dbMap.get(GROUP)); + serviceTraffic.setTimeBucket(((Number) dbMap.get(TIME_BUCKET)).longValue()); return serviceTraffic; } @@ -118,6 +117,7 @@ public class ServiceTraffic extends Metrics { map.put(NAME, serviceName); map.put(NODE_TYPE, storageData.getNodeType().value()); map.put(GROUP, storageData.getGroup()); + map.put(TIME_BUCKET, storageData.getTimeBucket()); return map; } }
