You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by ha...@apache.org on 2023/01/18 14:42:37 UTC

[skywalking-banyandb-java-client] branch float created (now 9370d76)

This is an automated email from the ASF dual-hosted git repository.

hanahmily pushed a change to branch float
in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-java-client.git


      at 9370d76  Update changelogs of 0.3.0-rc1 (#33)

This branch includes the following new commits:

     new 9370d76  Update changelogs of 0.3.0-rc1 (#33)

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[skywalking-banyandb-java-client] 01/01: Update changelogs of 0.3.0-rc1 (#33)

Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

hanahmily pushed a commit to branch float
in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-java-client.git

commit 9370d7673897f848b10f3d5b438cc839a5b38f9a
Author: 吴晟 Wu Sheng <wu...@foxmail.com>
AuthorDate: Fri Jan 6 10:56:52 2023 +0800

    Update changelogs of 0.3.0-rc1 (#33)
---
 CHANGES.md                                           |  8 ++++++++
 .../banyandb/v1/client/BanyanDBClient.java           | 20 ++++++++++++++++++--
 .../skywalking/banyandb/v1/client/DataPoint.java     |  2 ++
 .../banyandb/v1/client/metadata/Measure.java         | 15 ++++++++++++++-
 src/main/proto/banyandb/v1/banyandb-database.proto   |  1 +
 src/main/proto/banyandb/v1/banyandb-model.proto      |  5 +++++
 .../client/metadata/MeasureMetadataRegistryTest.java |  3 +++
 7 files changed, 51 insertions(+), 3 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 1953887..5c204b3 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -2,6 +2,14 @@ Changes by Version
 ==================
 Release Notes.
 
+0.3.0-rc1
+------------------
+
+### Features
+* Remove Measure ID by @hanahmily in https://github.com/apache/skywalking-banyandb-java-client/pull/30
+* Drop indexRuleBinding for empty indexRules by @hanahmily in https://github.com/apache/skywalking-banyandb-java-client/pull/31
+
+
 0.3.0-rc0
 ------------------
 
diff --git a/src/main/java/org/apache/skywalking/banyandb/v1/client/BanyanDBClient.java b/src/main/java/org/apache/skywalking/banyandb/v1/client/BanyanDBClient.java
index 60d25fd..5c5e902 100644
--- a/src/main/java/org/apache/skywalking/banyandb/v1/client/BanyanDBClient.java
+++ b/src/main/java/org/apache/skywalking/banyandb/v1/client/BanyanDBClient.java
@@ -508,7 +508,16 @@ public class BanyanDBClient implements Closeable {
             BanyanDBException {
         IndexRuleBindingMetadataRegistry irbRegistry = new IndexRuleBindingMetadataRegistry(checkNotNull(this.channel));
 
-        IndexRuleBinding irb = irbRegistry.get(group, bindingName);
+        IndexRuleBinding irb;
+        try {
+            irb = irbRegistry.get(group, bindingName);
+        } catch (BanyanDBException ex) {
+            if (ex.getStatus().equals(Status.Code.NOT_FOUND)) {
+                return Collections.emptyList();
+            }
+            throw ex;
+        }
+
         if (irb == null) {
             return Collections.emptyList();
         }
@@ -516,7 +525,14 @@ public class BanyanDBClient implements Closeable {
         IndexRuleMetadataRegistry irRegistry = new IndexRuleMetadataRegistry(checkNotNull(this.channel));
         List<IndexRule> indexRules = new ArrayList<>(irb.rules().size());
         for (final String rule : irb.rules()) {
-            indexRules.add(irRegistry.get(group, rule));
+            try {
+                indexRules.add(irRegistry.get(group, rule));
+            } catch (BanyanDBException ex) {
+                if (ex.getStatus().equals(Status.Code.NOT_FOUND)) {
+                    continue;
+                }
+                throw ex;
+            }
         }
         return indexRules;
     }
diff --git a/src/main/java/org/apache/skywalking/banyandb/v1/client/DataPoint.java b/src/main/java/org/apache/skywalking/banyandb/v1/client/DataPoint.java
index 1da8334..74b299f 100644
--- a/src/main/java/org/apache/skywalking/banyandb/v1/client/DataPoint.java
+++ b/src/main/java/org/apache/skywalking/banyandb/v1/client/DataPoint.java
@@ -58,6 +58,8 @@ public class DataPoint extends RowEntity {
                 return null;
             case BINARY_DATA:
                 return fieldValue.getBinaryData().toByteArray();
+            case FLOAT:
+                return fieldValue.getFloat().getValue();
             default:
                 throw new IllegalStateException("illegal type of FieldValue");
         }
diff --git a/src/main/java/org/apache/skywalking/banyandb/v1/client/metadata/Measure.java b/src/main/java/org/apache/skywalking/banyandb/v1/client/metadata/Measure.java
index 3f0aa50..1334dcd 100644
--- a/src/main/java/org/apache/skywalking/banyandb/v1/client/metadata/Measure.java
+++ b/src/main/java/org/apache/skywalking/banyandb/v1/client/metadata/Measure.java
@@ -200,7 +200,8 @@ public abstract class Measure extends NamedSchema<BanyandbDatabase.Measure> {
             UNSPECIFIED(BanyandbDatabase.FieldType.FIELD_TYPE_UNSPECIFIED),
             STRING(BanyandbDatabase.FieldType.FIELD_TYPE_STRING),
             INT(BanyandbDatabase.FieldType.FIELD_TYPE_INT),
-            BINARY(BanyandbDatabase.FieldType.FIELD_TYPE_DATA_BINARY);
+            BINARY(BanyandbDatabase.FieldType.FIELD_TYPE_DATA_BINARY),
+            FLOAT(BanyandbDatabase.FieldType.FIELD_TYPE_FLOAT);
 
             private final BanyandbDatabase.FieldType fieldType;
         }
@@ -243,6 +244,9 @@ public abstract class Measure extends NamedSchema<BanyandbDatabase.Measure> {
                 case FIELD_TYPE_DATA_BINARY:
                     b = newBinaryField(pb.getName());
                     break;
+                case FIELD_TYPE_FLOAT:
+                    b = newFloatField(pb.getName());
+                    break;
                 default:
                     throw new IllegalArgumentException("unrecognized field type");
             }
@@ -262,6 +266,15 @@ public abstract class Measure extends NamedSchema<BanyandbDatabase.Measure> {
             return b.build();
         }
 
+        /**
+         * Create a builder with float type
+         *
+         * @param name name of the field
+         */
+        public static Builder newFloatField(String name) {
+            return new Builder(name, FieldType.FLOAT);
+        }
+
         /**
          * Create a builder with string type
          *
diff --git a/src/main/proto/banyandb/v1/banyandb-database.proto b/src/main/proto/banyandb/v1/banyandb-database.proto
index 418eedc..6e1004c 100644
--- a/src/main/proto/banyandb/v1/banyandb-database.proto
+++ b/src/main/proto/banyandb/v1/banyandb-database.proto
@@ -71,6 +71,7 @@ enum FieldType {
   FIELD_TYPE_STRING = 1;
   FIELD_TYPE_INT = 2;
   FIELD_TYPE_DATA_BINARY = 3;
+  FIELD_TYPE_FLOAT = 4;
 }
 
 enum EncodingMethod {
diff --git a/src/main/proto/banyandb/v1/banyandb-model.proto b/src/main/proto/banyandb/v1/banyandb-model.proto
index c77e218..151fd0b 100644
--- a/src/main/proto/banyandb/v1/banyandb-model.proto
+++ b/src/main/proto/banyandb/v1/banyandb-model.proto
@@ -37,6 +37,10 @@ message Int {
   int64 value = 1;
 }
 
+message Float {
+  double value = 1;
+}
+
 message StrArray {
   repeated string value = 1;
 }
@@ -67,6 +71,7 @@ message FieldValue {
     model.v1.Str str = 2;
     model.v1.Int int = 3;
     bytes binary_data = 4;
+    model.v1.Float float = 5;
   }
 }
 
diff --git a/src/test/java/org/apache/skywalking/banyandb/v1/client/metadata/MeasureMetadataRegistryTest.java b/src/test/java/org/apache/skywalking/banyandb/v1/client/metadata/MeasureMetadataRegistryTest.java
index f02af33..159c1df 100644
--- a/src/test/java/org/apache/skywalking/banyandb/v1/client/metadata/MeasureMetadataRegistryTest.java
+++ b/src/test/java/org/apache/skywalking/banyandb/v1/client/metadata/MeasureMetadataRegistryTest.java
@@ -43,6 +43,7 @@ public class MeasureMetadataRegistryTest extends AbstractBanyanDBClientTest {
                         .build())
                 .addField(Measure.FieldSpec.newIntField("total").compressWithZSTD().encodeWithGorilla().build())
                 .addField(Measure.FieldSpec.newIntField("value").compressWithZSTD().encodeWithGorilla().build())
+                .addField(Measure.FieldSpec.newFloatField("sum").compressWithZSTD().encodeWithGorilla().build())
                 .addIndex(IndexRule.create("scope", IndexRule.IndexType.INVERTED, IndexRule.IndexLocation.SERIES))
                 .build();
         this.client.define(expectedMeasure);
@@ -63,6 +64,7 @@ public class MeasureMetadataRegistryTest extends AbstractBanyanDBClientTest {
                         .build())
                 .addField(Measure.FieldSpec.newIntField("total").compressWithZSTD().encodeWithGorilla().build())
                 .addField(Measure.FieldSpec.newIntField("value").compressWithZSTD().encodeWithGorilla().build())
+                .addField(Measure.FieldSpec.newFloatField("sum").compressWithZSTD().encodeWithGorilla().build())
                 .addIndex(IndexRule.create("scope", IndexRule.IndexType.INVERTED, IndexRule.IndexLocation.SERIES))
                 .build();
         this.client.define(expectedMeasure);
@@ -81,6 +83,7 @@ public class MeasureMetadataRegistryTest extends AbstractBanyanDBClientTest {
                         .build())
                 .addField(Measure.FieldSpec.newIntField("total").compressWithZSTD().encodeWithGorilla().build())
                 .addField(Measure.FieldSpec.newIntField("value").compressWithZSTD().encodeWithGorilla().build())
+                .addField(Measure.FieldSpec.newFloatField("sum").compressWithZSTD().encodeWithGorilla().build())
                 .addIndex(IndexRule.create("scope", IndexRule.IndexType.INVERTED, IndexRule.IndexLocation.SERIES))
                 .build();
         this.client.define(expectedMeasure);