You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "Sijie Guo (JIRA)" <ji...@apache.org> on 2013/06/29 03:32:20 UTC
[jira] [Commented] (BOOKKEEPER-604) Ledger storage can log an
exception if GC happens concurrently.
[ https://issues.apache.org/jira/browse/BOOKKEEPER-604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13696005#comment-13696005 ]
Sijie Guo commented on BOOKKEEPER-604:
--------------------------------------
I don't think the fix is right. the case would not happen at that place that the patch tried to fix, since it is protected under a synchronized block.
the race could only happen after it got the firstEntryList and started to flush and deleteLedger kicked in. I think a simple fix is we should call getFileInfo once and use this fileInfo acrossing the flush period and release it only after flushing is done.
> Ledger storage can log an exception if GC happens concurrently.
> ---------------------------------------------------------------
>
> Key: BOOKKEEPER-604
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-604
> Project: Bookkeeper
> Issue Type: Bug
> Reporter: Ivan Kelly
> Fix For: 4.3.0
>
> Attachments: BOOKKEEPER-604.diff
>
>
> If a ledger is flushing, and part way through,GC kicks in, it can delete the index file before we try and flush it.
--
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