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

huaxiang sun commented on HBASE-18490:
--------------------------------------

Hi [~ram_krish], thanks for the detail explain. I spent some time today to try 
the master branch. It is broken that both increasing replica count or 
decreasing replica count are not working.

Traced code a bit, the delete is needed to avoid creation of these removed 
regions. When table is enabled, the following code will create replica regions 
which are not recorded in meta in branch-1.

https://github.com/apache/hbase/blob/branch-1/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.java#L425

So for branch-1, it is fine.

With branch-2+, it is broken that the number of regions created is fixed 
(loaded from meta at the very begin). Changing replica count does not play 
anymore.

https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/EnableTableProcedure.java#L103

We need to fix this logic.


> Modifying a table descriptor to enable replicas does not create replica 
> regions
> -------------------------------------------------------------------------------
>
>                 Key: HBASE-18490
>                 URL: https://issues.apache.org/jira/browse/HBASE-18490
>             Project: HBase
>          Issue Type: Bug
>          Components: Region Assignment
>    Affects Versions: 1.3.1, 1.2.6, 2.0.0-alpha-1
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>         Attachments: TestRegionReplicasWithRestartScenarios.java
>
>
> After creating a table, if we try to modify the table to enable region 
> replication, the new Htable Descriptor is not taken into account and the 
> table is enabled again with default single region.
> Ping [~enis], [~tedyu], [~devaraj].



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to