[ https://issues.apache.org/jira/browse/HDFS-3800?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Todd Lipcon updated HDFS-3800: ------------------------------ Attachment: hdfs-3800.txt This patch applies on top of the following other staged patches: pick fac7f15 HDFS-3796. Allow EditLogFileOutputStream to skip fsync() in tests pick 5a18397 HDFS-3765. initializeSharedEdits pick 85978e7 HDFS-3793. Implement format() for QJM pick 4fc442e HDFS-3795. Validate journal dir at startup pick f2da880 HDFS-3798. Avoid throwing NPE if finalizeLogSegment() is called on an invalid segment pick b0d1a3d HDFS-3799. deal with empty files in recovery path pick d792847 HDFS-3797. Make journal() call take segmentTxId as parameter The new randomized test requires a few more patches on top before it passes reliably. However, I'd like to check it in and then get it passing reliably in follow-up JIRAs. > QJM: improvements to QJM fault testing > -------------------------------------- > > Key: HDFS-3800 > URL: https://issues.apache.org/jira/browse/HDFS-3800 > Project: Hadoop HDFS > Issue Type: Sub-task > Affects Versions: QuorumJournalManager (HDFS-3077) > Reporter: Todd Lipcon > Assignee: Todd Lipcon > Attachments: hdfs-3800.txt > > > This JIRA improves TestQJMWithFaults as follows: > - the current implementation didn't properly unwrap exceptions thrown by the > reflection-based injection method. This caused some issues in the code where > the injecting proxy didn't act quite like the original object. > - the current implementation incorrectly assumed that the recovery process > would recover to _exactly_ the last acked sequence number. In fact, it may > recover to that transaction _or any greater transaction_. > It also adds a new randomized test which uncovered a number of other bugs. I > will defer to the included javadoc for a description of this test. -- 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