This is an automated email from the ASF dual-hosted git repository.
wankai 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 de2d641a3d MQE: fix multiple labeled metric query and make it won't
get result if no label value compose is match. (#13665)
de2d641a3d is described below
commit de2d641a3de4756f799e8c0b15d6bb4bd44482ad
Author: Wan Kai <[email protected]>
AuthorDate: Wed Jan 14 10:55:21 2026 +0800
MQE: fix multiple labeled metric query and make it won't get result if no
label value compose is match. (#13665)
---
docs/en/changes/changes.md | 1 +
.../skywalking/oap/server/core/storage/query/IMetricsQueryDAO.java | 2 ++
2 files changed, 3 insertions(+)
diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index e4b027e898..ac63498df5 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -20,6 +20,7 @@
* Remove `bydb.dependencies.properties` and set the compatible BanyanDB API
version number in `${SW_STORAGE_BANYANDB_COMPATIBLE_SERVER_API_VERSIONS}`
* Fix trace profiling query time range condition.
* Fix BanyanDB time range overflow in profile thread snapshot query.
+* MQE: fix multiple labeled metric query and ensure no results are returned if
no label value combinations match.
#### UI
* Fix the missing icon in new native trace view.
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/query/IMetricsQueryDAO.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/query/IMetricsQueryDAO.java
index 5b50d7faf5..acb1ffa87e 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/query/IMetricsQueryDAO.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/query/IMetricsQueryDAO.java
@@ -191,6 +191,8 @@ public interface IMetricsQueryDAO extends DAO {
});
if (!keySet.isEmpty()) {
keySets.add(keySet);
+ } else { // If any query label has no matches, clear all
keySets so that no results are returned
+ keySets.clear();
}
}
//intersection labels