This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git
The following commit(s) were added to refs/heads/master by this push:
new 9e07ad7e9f Fix query history process data failure (#9471)
9e07ad7e9f is described below
commit 9e07ad7e9fc36abb9902d52f0dc2ce90aa1dd00d
Author: mrproliu <[email protected]>
AuthorDate: Mon Aug 15 18:17:52 2022 +0800
Fix query history process data failure (#9471)
---
docs/en/changes/changes.md | 1 +
.../skywalking/oap/server/core/query/MetadataQueryService.java | 4 ++++
.../storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java | 3 ---
.../storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java | 7 +------
.../oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java | 7 -------
5 files changed, 6 insertions(+), 16 deletions(-)
diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index 09745f13a6..8603cdd042 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -50,6 +50,7 @@
* Support MySQL monitoring.
* Fix query services by serviceId error when Elasticsearch storage
`SW_STORAGE_ES_QUERY_MAX_SIZE` > 10000.
* Support sending alarm messages to Discord.
+* Fix query history process data failure.
#### UI
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java
index dfd451b075..ada569a7f9 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java
@@ -21,6 +21,7 @@ package org.apache.skywalking.oap.server.core.query;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import java.util.Set;
import java.util.concurrent.TimeUnit;
@@ -104,6 +105,9 @@ public class MetadataQueryService implements
org.apache.skywalking.oap.server.li
}
public List<Process> listProcesses(final Duration duration, final String
instanceId) throws IOException {
+ if (duration.getEndTimeBucket() < duration.getStartTimeBucket()) {
+ return Collections.emptyList();
+ }
return getMetadataQueryDAO().listProcesses(instanceId,
duration.getStartTimeBucket(), duration.getEndTimeBucket());
}
diff --git
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
index 556fe7c5c2..f611cb1ede 100644
---
a/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-banyandb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/banyandb/measure/BanyanDBMetadataQueryDAO.java
@@ -210,7 +210,6 @@ public class BanyanDBMetadataQueryDAO extends
AbstractBanyanDBDAO implements IMe
protected void apply(MeasureQuery query) {
query.and(eq(ProcessTraffic.SERVICE_ID, serviceId));
query.and(gte(ProcessTraffic.LAST_PING_TIME_BUCKET,
lastPingStartTimeBucket));
- query.and(lte(ProcessTraffic.LAST_PING_TIME_BUCKET,
lastPingEndTimeBucket));
query.and(eq(ProcessTraffic.PROFILING_SUPPORT_STATUS,
supportStatus.value()));
query.and(ne(ProcessTraffic.DETECT_TYPE,
ProcessDetectType.VIRTUAL.value()));
}
@@ -235,7 +234,6 @@ public class BanyanDBMetadataQueryDAO extends
AbstractBanyanDBDAO implements IMe
protected void apply(MeasureQuery query) {
query.and(eq(ProcessTraffic.INSTANCE_ID,
serviceInstanceId));
query.and(gte(ProcessTraffic.LAST_PING_TIME_BUCKET,
lastPingStartTimeBucket));
- query.and(lte(ProcessTraffic.LAST_PING_TIME_BUCKET,
lastPingEndTimeBucket));
query.and(ne(ProcessTraffic.DETECT_TYPE,
ProcessDetectType.VIRTUAL.value()));
}
});
@@ -281,7 +279,6 @@ public class BanyanDBMetadataQueryDAO extends
AbstractBanyanDBDAO implements IMe
protected void apply(MeasureQuery query) {
query.and(eq(ProcessTraffic.SERVICE_ID, serviceId));
query.and(gte(ProcessTraffic.LAST_PING_TIME_BUCKET,
lastPingStartTimeBucket));
- query.and(lte(ProcessTraffic.LAST_PING_TIME_BUCKET,
lastPingEndTimeBucket));
query.and(eq(ProcessTraffic.PROFILING_SUPPORT_STATUS,
profilingSupportStatus.value()));
query.and(ne(ProcessTraffic.DETECT_TYPE,
ProcessDetectType.VIRTUAL.value()));
}
diff --git
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java
index 5e634ccec4..2b4f3c48e3 100644
---
a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java
+++
b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java
@@ -331,14 +331,9 @@ public class MetadataQueryEsDAO extends EsDAO implements
IMetadataQueryDAO {
if (profilingSupportStatus != null) {
query.must(Query.term(ProcessTraffic.PROFILING_SUPPORT_STATUS,
profilingSupportStatus.value()));
}
- final RangeQueryBuilder rangeQuery =
Query.range(ProcessTraffic.LAST_PING_TIME_BUCKET);
if (lastPingStartTimeBucket > 0) {
+ final RangeQueryBuilder rangeQuery =
Query.range(ProcessTraffic.LAST_PING_TIME_BUCKET);
rangeQuery.gte(lastPingStartTimeBucket);
- }
- if (lastPingEndTimeBucket > 0) {
- rangeQuery.lte(lastPingEndTimeBucket);
- }
- if (lastPingStartTimeBucket > 0 || lastPingEndTimeBucket > 0) {
query.must(rangeQuery);
}
query.mustNot(Query.term(ProcessTraffic.DETECT_TYPE,
ProcessDetectType.VIRTUAL.value()));
diff --git
a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java
b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java
index 619959aced..b97265b62c 100644
---
a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java
+++
b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java
@@ -365,13 +365,6 @@ public class H2MetadataQueryDAO implements
IMetadataQueryDAO {
sql.append(ProcessTraffic.LAST_PING_TIME_BUCKET).append(">=?");
condition.add(lastPingStartTimeBucket);
}
- if (lastPingEndTimeBucket > 0) {
- if (!condition.isEmpty()) {
- sql.append(" and ");
- }
- sql.append(ProcessTraffic.LAST_PING_TIME_BUCKET).append("<=?");
- condition.add(lastPingEndTimeBucket);
- }
if (!condition.isEmpty()) {
sql.append(" and ");
}