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

corgy pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/seatunnel.git


The following commit(s) were added to refs/heads/dev by this push:
     new c3b63c84d0 [Bugfix] Doris Sink should not throw exception when the 
transaction is already committed/visible (#10079)
c3b63c84d0 is described below

commit c3b63c84d01a8eda4a75d26ab88da0a6d2bee397
Author: Sim Chou <[email protected]>
AuthorDate: Wed Dec 3 00:45:16 2025 +0800

    [Bugfix] Doris Sink should not throw exception when the transaction is 
already committed/visible (#10079)
---
 .../seatunnel/connectors/doris/sink/committer/DorisCommitter.java      | 3 ++-
 .../java/org/apache/seatunnel/connectors/doris/util/ResponseUtil.java  | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git 
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitter.java
 
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitter.java
index 87629ec1c1..123ef84317 100644
--- 
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitter.java
+++ 
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitter.java
@@ -117,7 +117,8 @@ public class DorisCommitter implements 
SinkCommitter<DorisCommitInfo> {
             String loadResult = EntityUtils.toString(response.getEntity());
             Map<String, String> res =
                     mapper.readValue(loadResult, new 
TypeReference<HashMap<String, String>>() {});
-            if (!LoadStatus.SUCCESS.equals(res.get("status"))) {
+            if (!LoadStatus.SUCCESS.equals(res.get("status"))
+                    && !ResponseUtil.isCommitted(res.get("msg"))) {
                 log.error(
                         "commit transaction error url:{},TxnId:{},result:{}",
                         String.format(COMMIT_PATTERN, hostPort, 
committable.getDb()),
diff --git 
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/util/ResponseUtil.java
 
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/util/ResponseUtil.java
index 0f5969ddf2..f87f5bf880 100644
--- 
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/util/ResponseUtil.java
+++ 
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/util/ResponseUtil.java
@@ -31,6 +31,6 @@ public class ResponseUtil {
                             + "is already 
\\b(COMMITTED|committed|VISIBLE|visible)\\b, not pre-committed.");
 
     public static boolean isCommitted(String msg) {
-        return COMMITTED_PATTERN.matcher(msg).matches();
+        return COMMITTED_PATTERN.matcher(msg).find();
     }
 }

Reply via email to