[ 
https://issues.apache.org/jira/browse/HBASE-10985?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13995720#comment-13995720
 ] 

Mikhail Antonov commented on HBASE-10985:
-----------------------------------------

Some small comments:

 - unused import of ZkSplitTransactionConsensus in AssignmentManager, 
znodeVersion in SplitTransaction isn't used (and shouldn't be needed?)
 - Why do we need to pass in Server instance to methods of 
SplitTransactionConsensus? We can retrieve it from the consensusProvider 
reference kept in ZkSplitTransactionConsensus instance (also the split 
consensus could better be  field in SplitTransaction class I guess, shouldn't 
need to retrieve it from ConsensusProvider each time?)
 - fields consensus and watcher in ZkSplitTransactionConsensus are unused
 - can we have the methods on split consensus to not use zk-related terms like 
"transition node", or it's hard because of the zk is too tightly integrated 
here? Ideally guys glancing thru code other than consensus impl shall not need 
to know that. E.g. we could have it renamed like: (transitionSplittingNode -> 
preCommitByRegionServer; transitionZkNode -> commitByRegionServer, 
createNodeSplitting -> startTxnOnRegionServer, getNode -> 
heartbeatRegionSplitting - do you think this naming accurately reflects the 
actual meaning?), also - could we not return values like -1 coming from ZK 
world from methods of consensus?
 - to eliminate KeeperException from SplitTransaction, could we move some 
portion of post splitting steps in openDaughers() like this:

 {code}
ry {
          // add 2nd daughter first (see HBASE-4335)
          services.postOpenDeployTasks(b, server.getCatalogTracker());
          // Should add it to OnlineRegions
          services.addToOnlineRegions(b);
          services.postOpenDeployTasks(a, server.getCatalogTracker());
          services.addToOnlineRegions(a);
{code}
to separate consensus method? This way we can remove KeeperException from 
imports.

> Decouple Split Transaction from Zookeeper
> -----------------------------------------
>
>                 Key: HBASE-10985
>                 URL: https://issues.apache.org/jira/browse/HBASE-10985
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Consensus, Zookeeper
>            Reporter: Sergey Soldatov
>         Attachments: HBASE-10985.patch, HBASE-10985.patch, HBASE-10985.patch, 
> HBASE_10985-v2.patch, HBASE_10985-v3.patch, HBASE_10985-v4.patch
>
>
> As part of  HBASE-10296 SplitTransaction should be decoupled from Zookeeper. 
> This is an initial patch for review. At the moment the consensus provider  
> placed directly to SplitTransaction to minimize affected code. In the ideal 
> world it should be done in HServer.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to