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

Yixue (Andrew) Zhu commented on BOOKKEEPER-455:
-----------------------------------------------

Sijie,
I understand what LAC is.
The description is that It is *NOT* used by bookie. The fencing description 
https://cwiki.apache.org/BOOKKEEPER/fencing.html does not match with actual 
implementation.

Instead, ledger recovery just look at the index file to get last-written-entry. 
It seems that an assumption is made that client will not send next entry until 
previous entry get ACKed.

The logic does not seem to be correct -
Last-written-entry-id is used as last-acked-entry-id.

 

                
> Bookie recovery made assumption that entries are persisted in entry id order
> ----------------------------------------------------------------------------
>
>                 Key: BOOKKEEPER-455
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-455
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: bookkeeper-server
>    Affects Versions: 4.2.0
>            Reporter: Yixue (Andrew) Zhu
>            Priority: Minor
>
> The entries sent by bookkeeper client can be out of order (due to network). 
> The client uses queue to track last-confirmed-entry-id correctly.
> The bookie server will happily persist the entries out of order, i.e. gaps 
> are possible. If bookie crash, the recovery can cause last-confirmed-entry-id 
> to be set to the last-entry persisted by bookie. The gap is not tracked nor 
> detected at server side.
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to