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 95182a7716 `BanyanDB Client`: Property query support `Order By`. 
(#13668)
95182a7716 is described below

commit 95182a7716514f1ee732bb26bd5d2f229d6941d6
Author: Wan Kai <[email protected]>
AuthorDate: Thu Jan 15 17:01:06 2026 +0800

    `BanyanDB Client`: Property query support `Order By`. (#13668)
---
 docs/en/changes/changes.md                         |  1 +
 .../library/banyandb/v1/client/PropertyQuery.java  | 30 +++++++++++++++++++++-
 2 files changed, 30 insertions(+), 1 deletion(-)

diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index dadf375820..bbc2483dce 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -23,6 +23,7 @@
 * `BrowserErrorLog`, OAP Server generated UUID to replace the original client 
side ID, because Browser scripts can't guarantee generated IDs are globally 
unique.
 * MQE: fix multiple labeled metric query and ensure no results are returned if 
no label value combinations match.
 * Fix `BrowserErrorLog` BanyanDB storage query order.
+* `BanyanDB Client`: Property query support `Order By`.
 
 #### UI
 * Fix the missing icon in new native trace view.
diff --git 
a/oap-server/server-library/library-banyandb-client/src/main/java/org/apache/skywalking/library/banyandb/v1/client/PropertyQuery.java
 
b/oap-server/server-library/library-banyandb-client/src/main/java/org/apache/skywalking/library/banyandb/v1/client/PropertyQuery.java
index 73e448eb6a..df907d1fe5 100644
--- 
a/oap-server/server-library/library-banyandb-client/src/main/java/org/apache/skywalking/library/banyandb/v1/client/PropertyQuery.java
+++ 
b/oap-server/server-library/library-banyandb-client/src/main/java/org/apache/skywalking/library/banyandb/v1/client/PropertyQuery.java
@@ -22,6 +22,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
 import lombok.Setter;
+import org.apache.skywalking.banyandb.model.v1.BanyandbModel;
 import org.apache.skywalking.banyandb.property.v1.BanyandbProperty;
 import 
org.apache.skywalking.library.banyandb.v1.client.grpc.exception.BanyanDBException;
 
@@ -39,6 +40,8 @@ public class PropertyQuery extends 
AbstractQuery<BanyandbProperty.QueryRequest>
      * Specific property IDs to query
      */
     private List<String> ids;
+
+    private OrderBy orderBy;
     
     /**
      * Construct a property query with required fields
@@ -95,7 +98,32 @@ public class PropertyQuery extends 
AbstractQuery<BanyandbProperty.QueryRequest>
         if (!this.ids.isEmpty()) {
             builder.addAllIds(this.ids);
         }
-        
+        if (this.orderBy != null) {
+            builder.setOrderBy(orderBy.build());
+        }
         return builder.build();
     }
+
+    public static class OrderBy {
+        private final String tagName;
+        private final Sort type;
+
+        /**
+         * Create an orderBy condition with given tag name and sort type
+         */
+        public OrderBy(final String tagName, final Sort type) {
+            this.tagName = tagName;
+            this.type = type;
+        }
+
+        BanyandbProperty.QueryOrder build() {
+            final BanyandbProperty.QueryOrder.Builder builder = 
BanyandbProperty.QueryOrder.newBuilder();
+            if (tagName != null) {
+                builder.setTagName(tagName);
+            }
+            builder.setSort(
+                Sort.DESC.equals(type) ? BanyandbModel.Sort.SORT_DESC : 
BanyandbModel.Sort.SORT_ASC);
+            return builder.build();
+        }
+    }
 }

Reply via email to