jvrao commented on a change in pull request #853: BP-14 WriteFlag DEFERRED_SYNC
Client Side Implementation
URL: https://github.com/apache/bookkeeper/pull/853#discussion_r188492609
##########
File path:
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java
##########
@@ -1444,17 +1460,23 @@ void sendAddSuccessCallbacks() {
return;
}
// Check if it is the next entry in the sequence.
- if (pendingAddOp.entryId != 0 && pendingAddOp.entryId !=
lastAddConfirmed + 1) {
+ if (pendingAddOp.entryId != 0 && pendingAddOp.entryId !=
pendingAddsSequenceHead) {
Review comment:
@sijie Proposal to have nonDurableLAC is indeed to keep the LAC protocol
unchanged. If we update LAC with non-durable LAC value, recovery becomes
complicated because recovery assumes that up to LAC things are persisted. As
the piggy-backed LAC gets persisted on the disk, and if the client dies before
closing the ledger, Current recovery open logic hunts for writes beyond LAC.
But if LAC doesn't reflect persisted entry, then Recovery needs to go all the
way to entry-id-0. If we update LAC only when persisted we keep the overall
understanding of LAC intact.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services