You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrey Stepachev (JIRA)" <ji...@apache.org> on 2014/09/15 20:38:42 UTC

[jira] [Commented] (HBASE-6469) Failure on enable/disable table will cause table state in zk to be left as enabling/disabling until master is restarted

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

Andrey Stepachev commented on HBASE-6469:
-----------------------------------------

HBASE-7767 done, do we still need this?

> Failure on enable/disable table will cause table state in zk to be left as enabling/disabling until master is restarted
> -----------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-6469
>                 URL: https://issues.apache.org/jira/browse/HBASE-6469
>             Project: HBase
>          Issue Type: Bug
>          Components: master
>    Affects Versions: 0.94.6
>            Reporter: Enis Soztutar
>            Assignee: rajeshbabu
>            Priority: Critical
>         Attachments: 6469-expose-force-r3.patch, HBASE-6469.patch, HBASE-6469_2.patch, HBASE-6469_3.patch, HBASE-6469_4.patch, HBASE-6469_retry_enable_or_disable.patch
>
>
> In Enable/DisableTableHandler code, if something goes wrong in handling, the table state in zk is left as ENABLING / DISABLING. After that we cannot force any more action from the API or CLI, and the only recovery path is restarting the master. 
> {code}
>     if (done) {
>       // Flip the table to enabled.
>       this.assignmentManager.getZKTable().setEnabledTable(
>         this.tableNameStr);
>       LOG.info("Table '" + this.tableNameStr
>       + "' was successfully enabled. Status: done=" + done);
>     } else {
>       LOG.warn("Table '" + this.tableNameStr
>       + "' wasn't successfully enabled. Status: done=" + done);
>     }
> {code}
> Here, if done is false, the table state is not changed. There is also no way to set skipTableStateCheck from cli / api. 
> We have run into this issue a couple of times before. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)