[ https://issues.apache.org/jira/browse/HDFS-6940?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14112651#comment-14112651 ]
Aaron T. Myers commented on HDFS-6940: -------------------------------------- Not entirely sure what was unclear here. I think that subclassing the NN and using implementation inheritance to implement the ConsensusNode will be fragile, error prone, and difficult to maintain. I think it'd be much better if you could somehow abstract out the behavior of the NN that the ConsensusNode needs to change into some sort of plugin interface, with a default implementation just being what the NN currently does, and then you could provide an alternate implementation that does what the ConsensusNode needs to do. I think this is also what Sanjay is suggesting in [this comment|https://issues.apache.org/jira/browse/HDFS-6469?focusedCommentId=14111655&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14111655] on HDFS-6469. > Initial refactoring to allow ConsensusNode implementation > --------------------------------------------------------- > > Key: HDFS-6940 > URL: https://issues.apache.org/jira/browse/HDFS-6940 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: namenode > Affects Versions: 3.0.0 > Reporter: Konstantin Shvachko > Assignee: Konstantin Shvachko > Attachments: HDFS-6940.patch > > > Minor refactoring of FSNamesystem to open private methods that are needed for > CNode implementation. -- This message was sent by Atlassian JIRA (v6.2#6252)