[ 
https://issues.apache.org/jira/browse/HDFS-5074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Todd Lipcon updated HDFS-5074:
------------------------------

    Attachment: hdfs-5074.txt

Attached patch should fix the issue.

I removed the {{forReading}} parameter from {{selectInputStreams}} -- it really 
didn't have any good use now that we have the ability to fast-forward streams 
on read to the appropriate transaction ID. Now, selectInputStreams always 
returns every log segment which may include edits >= the requested transaction 
ID, even if the requested transaction ID falls in the middle of a segment.

I modified the existing TestFailureToReadEdits to run against both file-based 
HA and QJM-based HA. Without the fix, the modified test would fail with similar 
behavior as described here.

This patch also has a test refactor to create a new test utility class for 
starting HA clusters with QJM.
                
> Allow starting up from an fsimage checkpoint in the middle of a segment
> -----------------------------------------------------------------------
>
>                 Key: HDFS-5074
>                 URL: https://issues.apache.org/jira/browse/HDFS-5074
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: ha, namenode
>    Affects Versions: 3.0.0, 2.1.0-beta
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>         Attachments: hdfs-5074.txt
>
>
> We've seen the following behavior a couple times:
> - SBN is running and somehow encounters an error in the middle of replaying 
> an edit log in the tailer (eg the JN it's reading from crashes)
> - SBN successfully has processed half of the edits in the segment it was 
> reading.
> - SBN saves a checkpoint, which now falls in the middle of a segment, and 
> then restarts
> Upon restart, the SBN will load this checkpoint which falls in the middle of 
> a segment. {{selectInputStreams}} then fails when the SBN requests a 
> mid-segment txid.
> We should handle this case by downloading the right segment and 
> fast-forwarding to the correct txid.

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