[
https://issues.apache.org/jira/browse/BOOKKEEPER-447?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13488426#comment-13488426
]
Sijie Guo edited comment on BOOKKEEPER-447 at 11/1/12 2:47 AM:
---------------------------------------------------------------
Yixue, I would say sorry if it made you uncomfortable. I am pleased that we
could have great improvement using group commit idea as you proposal. I
attached a draft just to show my idea about this issue since we are discussing
different opinions for it, and I don't change the patch to be available since
it was still a draft to show the idea and there are still different opinions
about this problem. I am not to interrupt Robin's work.
was (Author: hustlmsp):
Yixue, I would say sorry if it made you uncomfortable. I am pleased that we
could have great improvement using group commit idea as you proposal. I
attached a draft just to show my idea about this issue since we are discussing
different opinions for it. I am not to interrupt Robin's work.
> Bookie can fail to recover if index pages flushed before ledger flush
> acknowledged
> ----------------------------------------------------------------------------------
>
> Key: BOOKKEEPER-447
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-447
> Project: Bookkeeper
> Issue Type: Bug
> Components: bookkeeper-server
> Affects Versions: 4.2.0
> Reporter: Yixue (Andrew) Zhu
> Assignee: Robin Dhamankar
> Labels: patch
> Fix For: 4.2.0
>
> Attachments: BOOKKEEPER-447.diff
>
>
> Bookie index page steal (LedgerCacheImpl::grabCleanPage) can cause index file
> to reflect unacknowledged entries (due to flushLedger). Suppose ledger and
> entry fail to flush due to Bookkeeper server crash, it will cause ledger
> recovery not able to use the bookie afterward, due to
> InterleavedStorageLedger::getEntry throws IOException.
> If the ackSet bookies all experience this problem (DC environment), the
> ledger will not be able to recover.
> The problem here essentially a violation of WAL. One reasonable fix is to
> track ledger flush progress (either per-ledger entry, or per-topic message).
> Do not flush index pages which tracks entries whose ledger (log) has not been
> flushed.
--
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