[
https://issues.apache.org/jira/browse/HBASE-3559?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13000574#comment-13000574
]
stack commented on HBASE-3559:
------------------------------
Just to say that Jon has been doing reviews on my patch over on rb. Our back
and forth doesn't show here. He just gave me +1 on commit.
> Move report of split to master OFF the heartbeat channel
> --------------------------------------------------------
>
> Key: HBASE-3559
> URL: https://issues.apache.org/jira/browse/HBASE-3559
> Project: HBase
> Issue Type: Task
> Reporter: stack
> Attachments: 3559-v3.txt, 3559.txt
>
>
> The heartbeat in hbase is about to go away. See hbase-1502. This issue is
> about moving the report of a split region off the heartbeat channel. This
> work needs to be done before I can finish up hbase-1502.
> Here is a provisional 'design' for how report of split to master will now
> work.
> Instead of riding a split message on the regionserver to master heartbeat,
> the regionserver will put up a znode under (the badly named) 'unassigned'
> directory; i.e. the regionserver will put the region into 'transition' (RIT).
> Usually the master does all RIT machinations. Splits will be an exception.
> The regionserver will move the znode through two states: SPLITTING and SPLIT.
> The master will clean up the SPLIT znode on receipt of child changed callback.
> There will be no extra data in the SPLITTING znode beyond the SPLITTING state
> name. The SPLIT znode will contain the name of the split daughters.
> Any region in RIT will block the balancer running. This could be an issue if
> lots of splits going on across a cluster.
> Master will need to handle new SPLIT and SPLITTING states and that another
> may have already written the RIT (unit tests).
> As before, regionserver figures region to split and runs
> CompactSplitThread#split. As before, this invokes SplitTransaction with its
> prepare, execute and when necessary rollback phase. Into the execute we'll
> add the setting of SPLITTING znode into RIT. The execution will end with
> setting the SPLIT znode state. Master will read and clear the SPLIT state
> when done.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira