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

Flavio Junqueira commented on BOOKKEEPER-162:
---------------------------------------------

As you pointed out, the current test in trunk reopens the ledger every time, 
and it passes if you reopen because we set the lastAddConfirmed value to the 
max value read from bookies. A second read should fail if you keep reading 
because the lastEntry the call requests may be larger than the 
lastAddConfirmed, which is not updated. The patch I provided fixes this issue.
                
> LedgerHandle.readLastConfirmed does not work
> --------------------------------------------
>
>                 Key: BOOKKEEPER-162
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-162
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: bookkeeper-client
>    Affects Versions: 4.0.0
>            Reporter: Philipp Sushkin
>            Assignee: Flavio Junqueira
>            Priority: Critical
>             Fix For: 4.0.0
>
>         Attachments: BOOKKEEPER-162.patch, BookieReadWriteTest.java.patch, 
> BookieReadWriteTest.java.patch, bookkeeper.log
>
>
> Two bookkeeper clients.
> 1st continuously writing to ledger X.
> 2nd (bk.openLedgerNoRecovery) polling ledger X for new entries and reading 
> them.
> In response we always reveiceing 0 as last confirmed entry id (in fact we are 
> receiving -1 from each bookie RecoveryData but then in ReadLastConfirmedOp, 
> but uninitialized "long maxAddConfirmed;" takes priority in Math.max(...).
> Main question - is given scenario is expected to work at all?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to