Can you organize the preview in multiple changes that would eventually be sent out as prs? It would be easier to review.
On Sep 29, 2017 4:41 AM, "Enrico Olivelli" <eolive...@gmail.com> wrote: > 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 >