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

Aaron T. Myers updated HDFS-4298:
---------------------------------

    Attachment: HDFS-4298.patch

Thanks a lot for the review, Todd. Here's a patch which addresses your feedback.

bq. Small thing: in the new unit test testSelectInputStreamsNotOnBoundary it 
would be good to actually check the resulting list of streams. It should 
include the 21-30 stream, right?

Good idea. Added an assertion and had to amend 
FileJournalManager#getRemoteEditLogs to implement this correctly.

bq. in getLogsAsString, it should be pass false for isReading, right?

You're right that the test isn't reading from the returned streams, but 
changing this will result in the test failing as-written. I could change the 
cases that the tests are asserting, but then the tests won't really be testing 
what they were intended to, which is what streams are returned when you do ask 
for streams which you can read from.
                
> StorageRetentionManager spews warnings when used with QJM
> ---------------------------------------------------------
>
>                 Key: HDFS-4298
>                 URL: https://issues.apache.org/jira/browse/HDFS-4298
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: namenode
>    Affects Versions: 3.0.0, 2.0.3-alpha
>            Reporter: Todd Lipcon
>            Assignee: Aaron T. Myers
>         Attachments: HDFS-4298.patch, HDFS-4298.patch, HDFS-4298.patch
>
>
> When the NN is configured with a QJM, we see the following warning message 
> every time a checkpoint is made or uploaded:
> 12/12/10 16:07:52 WARN namenode.FSEditLog: Unable to determine input streams 
> from QJM to [127.0.0.1:13001, 127.0.0.1:13002, 127.0.0.1:13003]. Skipping.
> org.apache.hadoop.hdfs.qjournal.client.QuorumException: Got too many 
> exceptions to achieve quorum size 2/3. 3 exceptions thrown:
> 127.0.0.1:13002: Asked for firstTxId 114837 which is in the middle of file 
> /tmp/jn-2/myjournal/current/edits_0000000000000095185-0000000000000114846
> ...
> This is because, since HDFS-2946, the NN calls {{selectInputStreams}} to 
> determine the number of log segments and put a cap on the number. This API 
> throws an exception in the case of QJM if the argument falls in the middle of 
> an edit log boundary.

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