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

Ivan Kelly commented on BOOKKEEPER-62:
--------------------------------------

I've marked this as a blocker and moved to 4.0.0. We only need to deal with 
(1), as (2) indicates a disk failure, and there's nothing we can do. The bookie 
should be scrapped and a new bookie should replace it and recovery should be 
run for the lost bookie.

I think solving this could be quite simple. If we create the entrylogger file 
with a different name, such as <logid>.log-inprogress, and then rename it to 
<logid>.log when we're done, the journal would then be able to complete the 
recovery. EntryLogger.createLogId is what we'd need to change. We'd only need 
to add 2-3 lines of code. Testing could just be a matter of manually corrupting 
a log file and trying to start.
                
> Bookie can not start when encountering corrupted records
> --------------------------------------------------------
>
>                 Key: BOOKKEEPER-62
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-62
>             Project: Bookkeeper
>          Issue Type: Bug
>            Reporter: Sijie Guo
>            Assignee: Ivan Kelly
>            Priority: Blocker
>             Fix For: 4.0.0
>
>
> bookie tries to extract ledger ids from entry loggers during starting up. if 
> some records corrupted, an IOException is thrown out.
> in extractLedgersFromEntryLogs function:
> line 459:
>                 int rc = bc.read(buff, pos);
>                 if (rc != data.length) {
>                     throw new IOException("Short read for entryLog " + 
> entryLogId + "@" + pos + "(" + rc + "!="
>                             + data.length + ")");
>                 }

--
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