[ https://issues.apache.org/jira/browse/HDFS-3863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13444461#comment-13444461 ]
Todd Lipcon commented on HDFS-3863: ----------------------------------- I decided to punt this aspect to a follow-up patch: {quote} This alone is enough for a good sanity check. If we want to also support reading the committed transactions while in-progress, it's not quite sufficient – the last batch of transactions will never be readable if the NN stops writing new batches for a protracted period of time. To solve this, we can add a timer thread to the client which periodically (eg once or twice a second) sends an RPC to update the committed-txid on all of the nodes. The periodic timer will also have the nice property of causing a NN which has been fenced to abort itself even if no write transactions are taking place. {quote} > QJM: track last "committed" txid > -------------------------------- > > Key: HDFS-3863 > URL: https://issues.apache.org/jira/browse/HDFS-3863 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: ha > Affects Versions: QuorumJournalManager (HDFS-3077) > Reporter: Todd Lipcon > Assignee: Todd Lipcon > Attachments: hdfs-3863-prelim.txt > > > Per some discussion with [~stepinto] > [here|https://issues.apache.org/jira/browse/HDFS-3077?focusedCommentId=13422579&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13422579], > we should keep track of the "last committed txid" on each JournalNode. Then > during any recovery operation, we can sanity-check that we aren't asked to > truncate a log to an earlier transaction. > This is also a necessary step if we want to support reading from in-progress > segments in the future (since we should only allow reads up to the commit > point) -- 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