[
https://issues.apache.org/jira/browse/BOOKKEEPER-710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13872374#comment-13872374
]
Sijie Guo commented on BOOKKEEPER-710:
--------------------------------------
[~ikelly] this jira is to fix the correctness of readLastAddConfirmed, not
about the change in LAC.
in general, an application that uses OpenLedgerNoRecovery would do follow logic:
{code}
long readEntry = xx;
lh.readEntries(readEntry, readEntry);
++readEntry;
if (readEntry > lh.getLastAddConfirmed()) {
lh.readLastAddConfirmed();
}
{code}
we have a change to piggyback LAC on read response (lh.readEntries), which
would update the client's LAC, which reduce polling LAC. it is useful for a
high volume ledger. but this change is unrelated to this jira, which is a
performance improvement (requires moving wire protocol to protobuf first).
> OpenLedgerNoRecovery should watch ensemble change.
> --------------------------------------------------
>
> Key: BOOKKEEPER-710
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-710
> Project: Bookkeeper
> Issue Type: Bug
> Components: bookkeeper-client
> Reporter: Sijie Guo
> Assignee: Sijie Guo
> Priority: Blocker
> Fix For: 4.3.0, 4.2.3
>
> Attachments: BOOKKEEPER-710.diff
>
>
> LedgerHandle opened by openLedgerNoRecovery should watch ensemble change.
> otherwise, readLastConfirmed & readEntries will stuck if there are ensemble
> changes in the ledger.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)