[ https://issues.apache.org/jira/browse/HDFS-3077?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469966#comment-13469966 ]
Sanjay Radia commented on HDFS-3077: ------------------------------------ Storing Epoch number in first transaction Todd I think we should store the epoch number in the no-op transactions once consensus is reached. * You raised the objection that this breaks the Journal abstraction. Think of this as an "info-field" of the special no-op transaction where the journal impl specific information is stored; this is fine since the roll operation automatically adds the non-op transaction and as part of that the journal impl that is doing the roll can record information in the info-field of the transaction. Indeed it should also store the writer's IP. Further, even the local disk journal impl should record the writer's IP. * With respect to your comment on the copying journal from local disk of a NN to QJMs journal. If you are doing this because the persistent state of the QJM is corrupt then it does not work in the 3077's current impl because one has to also recreate the epoch file manually. * As I mentioned earlier - Zookeeper also stores the epoch - the zxid contains the epoch number. (BTW 3077's design is fairly close to ZAB and zookeeper's protocol - but more on this in another comment.) > Quorum-based protocol for reading and writing edit logs > ------------------------------------------------------- > > Key: HDFS-3077 > URL: https://issues.apache.org/jira/browse/HDFS-3077 > Project: Hadoop HDFS > Issue Type: New Feature > Components: ha, name-node > Reporter: Todd Lipcon > Assignee: Todd Lipcon > Fix For: QuorumJournalManager (HDFS-3077) > > Attachments: hdfs-3077-partial.txt, hdfs-3077-test-merge.txt, > hdfs-3077.txt, hdfs-3077.txt, hdfs-3077.txt, hdfs-3077.txt, hdfs-3077.txt, > hdfs-3077.txt, hdfs-3077.txt, qjournal-design.pdf, qjournal-design.pdf, > qjournal-design.pdf, qjournal-design.pdf, qjournal-design.pdf, > qjournal-design.pdf, qjournal-design.tex, qjournal-design.tex > > > Currently, one of the weak points of the HA design is that it relies on > shared storage such as an NFS filer for the shared edit log. One alternative > that has been proposed is to depend on BookKeeper, a ZooKeeper subproject > which provides a highly available replicated edit log on commodity hardware. > This JIRA is to implement another alternative, based on a quorum commit > protocol, integrated more tightly in HDFS and with the requirements driven > only by HDFS's needs rather than more generic use cases. More details to > follow. -- 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