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

morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new a2ee53ad76f [Fix](multi-catalog) Fix the transaction is not removed in 
abnormal situations by removing transaction in finally block. (#36705)
a2ee53ad76f is described below

commit a2ee53ad76ff651d8059b954f4fde48eaf52b9f6
Author: Qi Chen <kaka11.c...@gmail.com>
AuthorDate: Fri Jun 28 17:41:20 2024 +0800

    [Fix](multi-catalog) Fix the transaction is not removed in abnormal 
situations by removing transaction in finally block. (#36705)
    
    [Fix] (multi-catalog) Fix the transaction is not removed in abnormal
    situations by removing transaction in `finally` block.
---
 .../java/org/apache/doris/transaction/HiveTransactionManager.java  | 7 +++++--
 .../org/apache/doris/transaction/IcebergTransactionManager.java    | 7 +++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/transaction/HiveTransactionManager.java
 
b/fe/fe-core/src/main/java/org/apache/doris/transaction/HiveTransactionManager.java
index 838d135fa45..c48210ad452 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/transaction/HiveTransactionManager.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/transaction/HiveTransactionManager.java
@@ -59,8 +59,11 @@ public class HiveTransactionManager implements 
TransactionManager {
 
     @Override
     public void rollback(long id) {
-        getTransactionWithException(id).rollback();
-        transactions.remove(id);
+        try {
+            getTransactionWithException(id).rollback();
+        } finally {
+            transactions.remove(id);
+        }
     }
 
     @Override
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
 
b/fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
index f4b802aaa99..f373c133685 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
@@ -51,8 +51,11 @@ public class IcebergTransactionManager implements 
TransactionManager {
 
     @Override
     public void rollback(long id) {
-        getTransactionWithException(id).rollback();
-        transactions.remove(id);
+        try {
+            getTransactionWithException(id).rollback();
+        } finally {
+            transactions.remove(id);
+        }
     }
 
     @Override


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to