[
https://issues.apache.org/jira/browse/BOOKKEEPER-152?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sijie Guo updated BOOKKEEPER-152:
---------------------------------
Attachment: BK-152.draft.patch
attach a draft patch.
the idea is to add a excluded list of bookies when openLedgerNoRecovery. If the
excluded bookie is in the quorum set which maxAddConfirmed entry belongs to,
bookie client just needs to wait quorumSize-n responses when readLastConfirmed.
then in recovery tool, we can pass the failed bookie as excluded bookies.
how is your opinion?
> Can't recover a ledger whose current ensemble contain failed bookie.
> --------------------------------------------------------------------
>
> Key: BOOKKEEPER-152
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-152
> Project: Bookkeeper
> Issue Type: Bug
> Components: bookkeeper-client
> Affects Versions: 4.0.0
> Reporter: Sijie Guo
> Fix For: 4.1.0
>
> Attachments: BK-152.draft.patch
>
>
> Suppose we have a unclosed ledger L, whose ensemble size is 2, quorum size is
> 2. the ledger's current ensemble is <bk1, bk2>.
> bk2 is crashed.
> we use recovery tool to recover entries in bk2. $
> bookkeeper-server/bin/bookkeeper org.apache.bookkeeper.tools.BookKeeperTools
> bk2
> recovery failed due to recovery tool can't open ledger L, since ledger L
> doesn't have enough quorum to readLastConfirmed entry.
> (asyncOpenLedgerNoRecovery)
--
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