You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bookkeeper.apache.org by GitBox <gi...@apache.org> on 2018/05/16 03:10:14 UTC

[GitHub] jvrao commented on a change in pull request #853: BP-14 WriteFlag DEFERRED_SYNC Client Side Implementation

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:
users@infra.apache.org


With regards,
Apache Git Services