Skip to content

Commit 6981c6b

Browse files
mattisonchaolhotari
authored andcommitted
[Fix][Broker] Fix race condition in OpAddEntry (apache#15233)
(cherry picked from commit b083e9a)
1 parent 6b163f1 commit 6981c6b

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3739,12 +3739,13 @@ private void checkAddTimeout() {
37393739
}
37403740
OpAddEntry opAddEntry = pendingAddEntries.peek();
37413741
if (opAddEntry != null) {
3742+
final long finalAddOpCount = opAddEntry.addOpCount;
37423743
boolean isTimedOut = opAddEntry.lastInitTime != -1
37433744
&& TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - opAddEntry.lastInitTime) >= timeoutSec;
37443745
if (isTimedOut) {
37453746
log.error("Failed to add entry for ledger {} in time-out {} sec",
37463747
(opAddEntry.ledger != null ? opAddEntry.ledger.getId() : -1), timeoutSec);
3747-
opAddEntry.handleAddTimeoutFailure(opAddEntry.ledger, opAddEntry.addOpCount);
3748+
opAddEntry.handleAddTimeoutFailure(opAddEntry.ledger, finalAddOpCount);
37483749
}
37493750
}
37503751
}

0 commit comments

Comments
 (0)