[
https://issues.apache.org/jira/browse/HBASE-13823?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15379466#comment-15379466
]
Stephen Yuan Jiang commented on HBASE-13823:
--------------------------------------------
AssignmentManager#recoverTableInDisablingState() and
recoverTableInEnablingState() are part of AssignmentManager#joinCluster().
HMaster#startProcedureExecutor() is part of HMaster#startServiceThreads()
{code}
private void finishActiveMasterInitialization(MonitoredTask status)
throws IOException, InterruptedException, KeeperException,
CoordinatedStateException {
...
startServiceThreads();
...
this.assignmentManager.joinCluster();
{code}
If the cluster already in 2.0 or the cluster is upgraded from 1.1.x, there is
no orphaned Enabling/Disabling table state.
This step is only needed for an unhealthy cluster upgrade from 1.0.x or older
version, I think the simplest way is just remove these two functions and add a
release note, if customer even has orphaned Enabling/Disabling table state, run
hbck to fix it. [~mbertozzi], how do you think?
> Procedure V2: unnecessaery operaions on
> AssignmentManager#recoverTableInDisablingState() and
> recoverTableInEnablingState()
> --------------------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-13823
> URL: https://issues.apache.org/jira/browse/HBASE-13823
> Project: HBase
> Issue Type: Sub-task
> Components: master, proc-v2
> Affects Versions: 2.0.0, 1.2.0
> Reporter: Stephen Yuan Jiang
> Assignee: Matteo Bertozzi
> Attachments: HBASE-13823-v0.patch, HBASE-13823-v1.patch,
> HBASE-13823-v2.patch, HBASE-13823-v3.patch, HBASE-13823-v4.patch
>
>
> AssignmentManager#recoverTableInDisablingState() and
> AssignmentManager#recoverTableInEnablingState try to complete unfinished
> enable/disable table operations. In the past, it is necessary, as master
> failure could leave table in bad state. With HBASE-13211, enable/disable
> operations would be auto-recover by Procedure-V2 logic. Those recovery
> operation is not necessary: we can either remove those recovery operation or
> not replay enable/disable operations in procedure queue.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)