This is an automated email from the ASF dual-hosted git repository. lhotari pushed a commit to branch branch-3.3 in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit a69aa115688327e940193a55602769d6403c0979 Author: ken <[email protected]> AuthorDate: Wed Nov 5 04:17:14 2025 +0800 [fix][txn] fix concurrent error cause txn stuck in TransactionBufferHandlerImpl#endTxn (#23551) Co-authored-by: fanjianye <[email protected]> (cherry picked from commit c4f125cfa292a8d61e0d037fa2d0fa1e89308b29) --- .../broker/transaction/buffer/impl/TransactionBufferHandlerImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/transaction/buffer/impl/TransactionBufferHandlerImpl.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/transaction/buffer/impl/TransactionBufferHandlerImpl.java index 34ee28693b4..181ed3acb1e 100644 --- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/transaction/buffer/impl/TransactionBufferHandlerImpl.java +++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/transaction/buffer/impl/TransactionBufferHandlerImpl.java @@ -128,6 +128,9 @@ public class TransactionBufferHandlerImpl implements TransactionBufferHandler { } } else { pendingRequests.add(op); + if (currentPermits != REQUEST_CREDITS_UPDATER.get(this)) { + checkPendingRequests(); + } return false; } } @@ -251,6 +254,7 @@ public class TransactionBufferHandlerImpl implements TransactionBufferHandler { invalid.recycle(); } endTxn(polled); + break; } else { REQUEST_CREDITS_UPDATER.incrementAndGet(this); }
