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

Duo Zhang commented on HBASE-21644:
-----------------------------------

The patch is fine, can solve part of the problem. But I think scheduling a 
reopen for the primary region is still necessary.

For example, in ReopenTableRegionProcedure, when we get all the replicas for 
region A, A_0(the default replica) is OPENED, and A_1(the secondary replica is 
OPENING, so we will reopen A_0, and wait for A_1 to be OPENED. And before A_1 
is OPENED, A_0 is OPENED, so the openSeqNum for A_1 will be the same with the 
opened A_0, so no matter how many times we reopen A_1, the openSeqNum will not 
increase, unless A_0 is reopened again...

Anyway, the patch here is simple and can solve part of the problem. Can open 
new issue for the above problem.

> Modify table procedure runs infinitely for a table having region replication 
> > 1
> --------------------------------------------------------------------------------
>
>                 Key: HBASE-21644
>                 URL: https://issues.apache.org/jira/browse/HBASE-21644
>             Project: HBase
>          Issue Type: Bug
>          Components: Admin
>    Affects Versions: 3.0.0, 2.1.1, 2.1.2
>            Reporter: Nihal Jain
>            Assignee: Nihal Jain
>            Priority: Critical
>         Attachments: HBASE-21644.master.001.patch, 
> HBASE-21644.master.002.patch, HBASE-21644.master.003.patch, 
> HBASE-21644.master.003.patch, HBASE-21644.master.UT.patch
>
>
> *Steps to reproduce*
>  # Create a table with region replication set to a value greater than 1
>  # Modify any of the table properties, say max file size
> *Expected Result*
>  The modify table should succeed and run to completion.
> *Actual Result*
>  The modify table keep running infinitely
> *Analysis/Issue*
>  The problem occurs due to inifinitely looping between states 
> {{REOPEN_TABLE_REGIONS_REOPEN_REGIONS}} and 
> {{REOPEN_TABLE_REGIONS_CONFIRM_REOPENED}} of {{ReopenTableRegionsProcedure}}, 
> called as part of {{ModifyTableProcedure}}.
> *Consequences*
>  For a table having region replicas:
>  - Any modify table operation fails to complete
>  - Also, enable table replication fails to complete as it is unable to change 
> the replication scope of the table in source cluster



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to