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 2019/02/12 07:13:00 UTC

[GitHub] ArvinDevel commented on a change in pull request #1944: BP-38: Bypass journal ledger

ArvinDevel commented on a change in pull request #1944: BP-38: Bypass journal ledger
URL: https://github.com/apache/bookkeeper/pull/1944#discussion_r255826281
 
 

 ##########
 File path: site/bps/BP-38-bypass-journal-ledger.md
 ##########
 @@ -0,0 +1,91 @@
+---
+title: "BP-38: bypass journal ledger"
+issue: https://github.com/apache/bookkeeper/issues/1918
+state: "Under Discussion"
+release: "N/A"
+---
+
+### Motivation
+
+To guarantee high durability, BK write journal before flush data to persistent device which will cause two write of data.
+At the presence of replicating and auto-recovery mechanism, the two-write is a bit waste of the persistent device bandwidth,
+especially on the [scenarios](https://cwiki.apache.org/confluence/display/BOOKKEEPER/BP-14+Relax+durability) which prefer weak durability guarantee.
+This proposal is aimed at providing bypass journal ledger, this feature includes these parts work:
+ - add new write flag `BYPASS_JOURNAL` to existing protocol
+ - impl the newly write flag at the client side and server side
 
 Review comment:
   Yes. What I mean is extending WriteFlags, the user who wants using this feature only needs pass WriteFlags to the WriteHandle. looks like this:
   ``` 
   newCreateLedgerOp()
                   .withEnsembleSize(3)
                   .withWriteQuorumSize(3)
                   .withAckQuorumSize(3)
                   .withPassword(PASSWORD)
                   .withWriteFlags(WriteFlag.BYPASS_JOURNAL)
                   .execute()
   ```

----------------------------------------------------------------
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