You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2023/06/28 09:59:05 UTC

[skywalking] branch master updated: Fix metric session cache saving after batch insert when using mysql-connector-java.(#11009) (#11012)

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 dfba1c634a Fix metric session cache saving after batch insert when using mysql-connector-java.(#11009) (#11012)
dfba1c634a is described below

commit dfba1c634a335826e06f8318e99caf4093f526d2
Author: weixiang1862 <65...@qq.com>
AuthorDate: Wed Jun 28 17:58:59 2023 +0800

    Fix metric session cache saving after batch insert when using mysql-connector-java.(#11009) (#11012)
---
 docs/en/changes/changes.md                                             | 1 +
 .../skywalking/oap/server/storage/plugin/jdbc/BatchSQLExecutor.java    | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index e8f46655f6..ea0fd9c05d 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -27,6 +27,7 @@
 * Packages with name `recevier` are renamed to `receiver`.
 * `BanyanDBMetricsDAO` handles `storeIDTag` in `multiGet` for `BanyanDBModelExtension`.
 * Fix endpoint grouping-related logic and enhance the performance of PatternTree retrieval. 
+* Fix metric session cache saving after batch insert when using `mysql-connector-java`
 
 #### UI
 
diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/BatchSQLExecutor.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/BatchSQLExecutor.java
index ea4993d9a9..10c6f1558e 100644
--- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/BatchSQLExecutor.java
+++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/BatchSQLExecutor.java
@@ -18,6 +18,7 @@
 
 package org.apache.skywalking.oap.server.storage.plugin.jdbc;
 
+import java.sql.Statement;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.skywalking.oap.server.core.UnexpectedException;
@@ -84,7 +85,7 @@ public class BatchSQLExecutor implements InsertRequest, UpdateRequest {
         final var executeBatchResults = preparedStatement.executeBatch();
         final var isInsert = bulkRequest.get(0) instanceof InsertRequest;
         for (int i = 0; i < executeBatchResults.length; i++) {
-            if (executeBatchResults[i] == 1 && isInsert) {
+            if ((executeBatchResults[i] == 1 || executeBatchResults[i] == Statement.SUCCESS_NO_INFO) && isInsert) {
                 // Insert successfully.
                 ((InsertRequest) bulkRequest.get(i)).onInsertCompleted();
             } else if (executeBatchResults[i] == 0 && !isInsert) {