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

Ted Yu commented on HBASE-7403:
-------------------------------

>From https://builds.apache.org/job/PreCommit-HBASE-Build/4884/console :
{code}
"pool-1-thread-1" prio=10 tid=0x773cec00 nid=0x5cfc in Object.wait() 
[0x77470000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x7f0afe98> (a 
org.apache.hadoop.hbase.util.JVMClusterUtil$RegionServerThread)
        at java.lang.Thread.join(Thread.java:1194)
        - locked <0x7f0afe98> (a 
org.apache.hadoop.hbase.util.JVMClusterUtil$RegionServerThread)
        at 
org.apache.hadoop.hbase.util.JVMClusterUtil.shutdown(JVMClusterUtil.java:252)
        at 
org.apache.hadoop.hbase.LocalHBaseCluster.shutdown(LocalHBaseCluster.java:430)
        at 
org.apache.hadoop.hbase.MiniHBaseCluster.shutdown(MiniHBaseCluster.java:501)
        at 
org.apache.hadoop.hbase.HBaseTestingUtility.shutdownMiniHBaseCluster(HBaseTestingUtility.java:919)
        at 
org.apache.hadoop.hbase.HBaseTestingUtility.shutdownMiniCluster(HBaseTestingUtility.java:889)
        at 
org.apache.hadoop.hbase.mapreduce.TestTableInputFormatScan.tearDownAfterClass(TestTableInputFormatScan.java:84)
{code}
                
> Online Merge
> ------------
>
>                 Key: HBASE-7403
>                 URL: https://issues.apache.org/jira/browse/HBASE-7403
>             Project: HBase
>          Issue Type: New Feature
>    Affects Versions: 0.95.0
>            Reporter: chunhui shen
>            Assignee: chunhui shen
>            Priority: Critical
>             Fix For: 0.95.0, 0.98.0
>
>         Attachments: 7403-trunkv5.patch, 7403-trunkv6.patch, 7403v5.diff, 
> 7403-v5.txt, 7403v5.txt, hbase-7403-94v1.patch, hbase-7403-trunkv10.patch, 
> hbase-7403-trunkv11.patch, hbase-7403-trunkv12.patch, 
> hbase-7403-trunkv13.patch, hbase-7403-trunkv14.patch, 
> hbase-7403-trunkv15.patch, hbase-7403-trunkv16.patch, 
> hbase-7403-trunkv19.patch, hbase-7403-trunkv1.patch, 
> hbase-7403-trunkv20.patch, hbase-7403-trunkv22.patch, 
> hbase-7403-trunkv23.patch, hbase-7403-trunkv24.patch, 
> hbase-7403-trunkv26.patch, hbase-7403-trunkv5.patch, 
> hbase-7403-trunkv6.patch, hbase-7403-trunkv7.patch, hbase-7403-trunkv8.patch, 
> hbase-7403-trunkv9.patch, merge region.pdf
>
>
> Support executing region merge transaction on Regionserver, similar with 
> split transaction
> Process of merging two regions:
> a.client sends RPC (dispatch merging regions) to master
> b.master moves the regions together (on the same regionserver where the more 
> heavily loaded region resided)
> c.master sends RPC (merge regions) to this regionserver
> d.Regionserver executes the region merge transaction in the thread pool
> e.the above b,c,d run asynchronously
> Process of region merge transaction:
> a.Construct a new region merge transaction.
> b.prepare for the merge transaction, the transaction will be canceled if it 
> is unavailable, 
> e.g. two regions don't belong to same table; two regions are not adjacent in 
> a non-compulsory merge; region is closed or has reference
> c.execute the transaction as the following:
>     /**
>      * Set region as in transition, set it into MERGING state.
>      */
>     SET_MERGING_IN_ZK,
>     /**
>      * We created the temporary merge data directory.
>      */
>     CREATED_MERGE_DIR,
>     /**
>      * Closed the merging region A.
>      */
>     CLOSED_REGION_A,
>     /**
>      * The merging region A has been taken out of the server's online regions 
> list.
>      */
>     OFFLINED_REGION_A,
>     /**
>      * Closed the merging region B.
>      */
>     CLOSED_REGION_B,
>     /**
>      * The merging region B has been taken out of the server's online regions 
> list.
>      */
>     OFFLINED_REGION_B,
>     /**
>      * Started in on creation of the merged region.
>      */
>     STARTED_MERGED_REGION_CREATION,
>     /**
>      * Point of no return. If we got here, then transaction is not recoverable
>      * other than by crashing out the regionserver.
>      */
>     PONR
> d.roll back if step c throws exception
> Usage:
> HBaseAdmin#mergeRegions
> See more details from the patch

--
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

Reply via email to