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

Reply via email to