Hi BookKeepers,
I would like to share the prototype for BP-14

https://cwiki.apache.org/confluence/display/BOOKKEEPER/BP-14+Relax+durability

I sent a WIP Pull Request
https://github.com/apache/bookkeeper/pull/529


Please note that this work depends on BP-15 (PR #510) because we are going
to use the new CreateLedger API.
Temporary I have added a lot of overloaded versions of
createLedger/createLedgerAdv but using the new API these new methods will
not be added.

I will try to split the patch in smaller tasks but I will appreciate if you
have some cycle to start looking at how it will look like.

Most notable changes:
- introducing a LedgerType in ledger metadata
- changes to wire protocol: optional LedgerType in AddRequest, changes in
AddResponse, new protocol messages for the Sync API
- changes to LederHandle#sendAddSuccessCallbacks (this is the main change
to the LAC Protocol on the client-side)
- for volatile durability changes LastAddConfirmed will advance only in
presence of an explicit "sync"
- introduction of SyncCounter on Journal to keep track of which entries
have been really persisted durably
- new Sync API (this will be subject to change, it will follow the "new
style" of BP-15 APIs)
- on close() a sync will not be performed automatically on volatile
durability ledgers


Cheers
Enrico

Reply via email to