diff --git a/src/main/java/com/actiontech/dble/backend/mysql/nio/handler/transaction/xa/handler/AbstractXAHandler.java b/src/main/java/com/actiontech/dble/backend/mysql/nio/handler/transaction/xa/handler/AbstractXAHandler.java index 0f52edf7a..eb9399014 100644 --- a/src/main/java/com/actiontech/dble/backend/mysql/nio/handler/transaction/xa/handler/AbstractXAHandler.java +++ b/src/main/java/com/actiontech/dble/backend/mysql/nio/handler/transaction/xa/handler/AbstractXAHandler.java @@ -171,8 +171,13 @@ public abstract class AbstractXAHandler extends MultiNodeHandler { public Set setUnResponseRrns() { Set targetKeys = session.getTargetKeys(); - this.unResponseRrns.addAll(targetKeys); - return targetKeys; + lock.lock(); + try { + this.unResponseRrns.addAll(targetKeys); + return targetKeys; + } finally { + lock.unlock(); + } } public String getXAStage() {