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

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

commit 34e72b61dde61e8dac6908003f563a49a61259b3
Author: Gao Hongtao <hanahm...@gmail.com>
AuthorDate: Tue Sep 9 20:19:03 2025 +0800

    Fix the failure of parsing the status code
    
    Signed-off-by: Gao Hongtao <hanahm...@gmail.com>
---
 .../v1/client/TraceBulkWriteProcessor.java         | 36 ++++++++++++----------
 1 file changed, 20 insertions(+), 16 deletions(-)

diff --git 
a/src/main/java/org/apache/skywalking/banyandb/v1/client/TraceBulkWriteProcessor.java
 
b/src/main/java/org/apache/skywalking/banyandb/v1/client/TraceBulkWriteProcessor.java
index 3d46e08..96fdc4d 100644
--- 
a/src/main/java/org/apache/skywalking/banyandb/v1/client/TraceBulkWriteProcessor.java
+++ 
b/src/main/java/org/apache/skywalking/banyandb/v1/client/TraceBulkWriteProcessor.java
@@ -25,9 +25,11 @@ import java.util.List;
 import lombok.extern.slf4j.Slf4j;
 
 import org.apache.skywalking.banyandb.common.v1.BanyandbCommon;
+import org.apache.skywalking.banyandb.model.v1.BanyandbModel;
 import org.apache.skywalking.banyandb.trace.v1.TraceServiceGrpc;
 import org.apache.skywalking.banyandb.trace.v1.BanyandbTrace;
 import 
org.apache.skywalking.banyandb.v1.client.grpc.exception.BanyanDBException;
+import org.apache.skywalking.banyandb.v1.client.util.StatusUtil;
 
 import javax.annotation.concurrent.ThreadSafe;
 
@@ -78,23 +80,25 @@ public class TraceBulkWriteProcessor extends 
AbstractBulkWriteProcessor<Banyandb
 
                     @Override
                     public void onNext(BanyandbTrace.WriteResponse 
writeResponse) {
-                        String status = writeResponse.getStatus();
-                        if ("succeed".equals(status)) {
-                            // Success case - do nothing
-                        } else if ("expired_schema".equals(status)) {
-                            BanyandbCommon.Metadata metadata = 
writeResponse.getMetadata();
-                            String schemaKey = metadata.getGroup() + "." + 
metadata.getName();
-                            if (!schemaExpired.contains(schemaKey)) {
-                                log.warn("The trace schema {} is expired, 
trying update the schema...", schemaKey);
-                                try {
-                                    
client.updateTraceMetadataCacheFromServer(metadata.getGroup(), 
metadata.getName());
-                                    schemaExpired.add(schemaKey);
-                                } catch (BanyanDBException e) {
-                                    log.error(e.getMessage(), e);
+                        BanyandbModel.Status status = 
StatusUtil.convertStringToStatus(writeResponse.getStatus());
+                        switch (status) {
+                            case STATUS_SUCCEED:
+                                break;
+                            case STATUS_EXPIRED_SCHEMA:
+                                BanyandbCommon.Metadata metadata = 
writeResponse.getMetadata();
+                                String schemaKey = metadata.getGroup() + "." + 
metadata.getName();
+                                if (!schemaExpired.contains(schemaKey)) {
+                                    log.warn("The trace schema {} is expired, 
trying update the schema...", schemaKey);
+                                    try {
+                                        
client.updateTraceMetadataCacheFromServer(metadata.getGroup(), 
metadata.getName());
+                                        schemaExpired.add(schemaKey);
+                                    } catch (BanyanDBException e) {
+                                        log.error(e.getMessage(), e);
+                                    }
                                 }
-                            }
-                        } else {
-                            log.warn("Write trace failed with status: {}", 
status);
+                                break;
+                            default:
+                                log.warn("Write trace failed with status: {}", 
status);
                         }
                     }
 

Reply via email to