[
https://issues.apache.org/jira/browse/BOOKKEEPER-1037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15973154#comment-15973154
]
Sijie Guo commented on BOOKKEEPER-1037:
---------------------------------------
[~eolivelli] I am confused about the case that you described in the
description. The recovery will do forward-recovery until it hits an entry that
doesn't exist. I am not sure why do you need explicit lac on addEntry. Ideally
lac should never be exposed in any interface.
> BP7 - Explicit LAC on addEntry
> ------------------------------
>
> Key: BOOKKEEPER-1037
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-1037
> Project: Bookkeeper
> Issue Type: New Feature
> Components: bookkeeper-client, bookkeeper-server
> Affects Versions: 4.4.0
> Reporter: Enrico Olivelli
> Assignee: Enrico Olivelli
> Original Estimate: 48h
> Remaining Estimate: 48h
>
> see
> https://cwiki.apache.org/confluence/display/BOOKKEEPER/BP7+-+Explicit+LAC+on+addEntry
> Summary of the problem:
> We want to ensure that some "important" entries will be readable for which
> the writer has received the acknowledge from a quorum of bookies without
> being able to piggyback the LastAddConfirmed or close the LedgerHandle (a
> writer which crashes).
> This is the simplest failing scenario:
> A writer creates a ledger
> The writer adds and entry and blocks for the acknowldege of the
> configured quorum of Bookies
> The writer crashes
> LAC has not been sent to Bookies and it has not been written to metadata
> A recovery is performed, truncating the ledger to the maximum
> LastAddConfirmed entry ID
> Now the entry is no more readable and there is no trace of it on metadata
> so it cannot be recovered
> We can add a new BookKeeper function, addConfirmedEntry which acks like the
> addEntry function but sends on the protocol a new flag which tells to the
> Bookie to "advance" the LastAddConfirmed flag immediately as we already do
> with the ExplicitLAC.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)