From 380663554b71c6e1b1bfa449cb41cfadf10a87b1 Mon Sep 17 00:00:00 2001 From: "wj.leng@trip.com" Date: Wed, 6 Dec 2023 19:24:26 +0800 Subject: [PATCH] DefaultTransactionManager.begin fix --- tm/src/main/java/io/seata/tm/DefaultTransactionManager.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tm/src/main/java/io/seata/tm/DefaultTransactionManager.java b/tm/src/main/java/io/seata/tm/DefaultTransactionManager.java index 879c626eaf4..62e1b72663d 100644 --- a/tm/src/main/java/io/seata/tm/DefaultTransactionManager.java +++ b/tm/src/main/java/io/seata/tm/DefaultTransactionManager.java @@ -35,6 +35,7 @@ import io.seata.core.protocol.transaction.GlobalStatusResponse; import io.seata.core.rpc.netty.TmNettyRemotingClient; +import java.util.Objects; import java.util.concurrent.TimeoutException; /** @@ -51,7 +52,7 @@ public String begin(String applicationId, String transactionServiceGroup, String request.setTransactionName(name); request.setTimeout(timeout); GlobalBeginResponse response = (GlobalBeginResponse) syncCall(request); - if (response.getResultCode() == ResultCode.Failed) { + if (Objects.isNull(response) || response.getResultCode() == ResultCode.Failed) { throw new TmTransactionException(TransactionExceptionCode.BeginFailed, response.getMsg()); } return response.getXid();