Skip to content

Commit

Permalink
[ML] When skipping updating mark delete position, execute callback wi…
Browse files Browse the repository at this point in the history
…th executor to prevent deadlock (apache#15971)

(cherry picked from commit bbc404b)
  • Loading branch information
lhotari authored and nicoloboschi committed Jun 8, 2022
1 parent 7c429d5 commit 4152dbc
Showing 1 changed file with 4 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1826,7 +1826,8 @@ void internalMarkDelete(final MarkDeleteEntry mdEntry) {
log.info("Skipping updating mark delete position to {}. The persisted mark delete position {} "
+ "is later.", mdEntry.newPosition, persistentMarkDeletePosition);
}
mdEntry.triggerComplete();
// run with executor to prevent deadlock
ledger.getExecutor().executeOrdered(ledger.getName(), safeRun(() -> mdEntry.triggerComplete()));
return;
}

Expand All @@ -1844,7 +1845,8 @@ void internalMarkDelete(final MarkDeleteEntry mdEntry) {
log.info("Skipping updating mark delete position to {}. The mark delete position update "
+ "in progress {} is later.", mdEntry.newPosition, inProgressLatest);
}
mdEntry.triggerComplete();
// run with executor to prevent deadlock
ledger.getExecutor().executeOrdered(ledger.getName(), safeRun(() -> mdEntry.triggerComplete()));
return;
}

Expand Down

0 comments on commit 4152dbc

Please sign in to comment.