[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13995075#comment-13995075
 ] 

Flavio Junqueira commented on BOOKKEEPER-758:
---------------------------------------------

It looks good. It sounds like you want to have a weaker version of 
ReadLastAddConfirmed that simply returns some valid value, not necessarily the 
last.

It looks like the callback can be called multiple times. For example, we can 
return immediately here:

{noformat}
// callback immediately
cb.readLastConfirmedDataComplete(BKException.Code.OK, maxRecoveredData);
{noformat}

and later on here:

{noformat}
        if (numResponsesPending == 0 && !completed) {
            if (!hasValidResponse) {
                // no success called
                
cb.readLastConfirmedDataComplete(BKException.Code.LedgerRecoveryException, 
maxRecoveredData);
            } else {
                // callback
                cb.readLastConfirmedDataComplete(BKException.Code.OK, 
maxRecoveredData);
            }
            completed = true;
        }
{noformat}

In the test cases, don't we have to wait until the bookie is down when we kill 
a bookie?

(typo) Also, in the last test case, it shouldn't be numEntries here:

{noformat}
       for (int i = 0; i < numEntries; i++) {
            killBookie(lh.getLedgerMetadata().currentEnsemble.get(i));
        }
{noformat}

> Add TryReadLastAddConfirmed API
> -------------------------------
>
>                 Key: BOOKKEEPER-758
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-758
>             Project: Bookkeeper
>          Issue Type: Improvement
>          Components: bookkeeper-client
>            Reporter: Sijie Guo
>            Assignee: Sijie Guo
>             Fix For: 4.3.0
>
>         Attachments: BOOKKEEPER-758.diff
>
>
> add TryReadLastConfirmed to read last confirmed without coverage checking, as 
> for readers which polls LAC, they just need LAC.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to