[ 
https://issues.apache.org/jira/browse/HBASE-10215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

rajeshbabu updated HBASE-10215:
-------------------------------

    Attachment: HBASE-10215_94.patch

by mistake previously uploaded trunk patch again.
This is 0.94 patch.

> TableNotFoundException should be thrown after removing stale znode in ETH
> -------------------------------------------------------------------------
>
>                 Key: HBASE-10215
>                 URL: https://issues.apache.org/jira/browse/HBASE-10215
>             Project: HBase
>          Issue Type: Bug
>          Components: master
>    Affects Versions: 0.96.1, 0.94.14
>            Reporter: rajeshbabu
>            Assignee: rajeshbabu
>            Priority: Minor
>             Fix For: 0.98.0, 0.94.16, 0.96.2, 0.99.0
>
>         Attachments: HBASE-10215.patch, HBASE-10215_94.patch, 
> HBASE-10215_v2.patch, HBASE-10215_v2.patch
>
>
> Lets suppose master went down while creating table then znode will be left in 
> ENABLING state. Master to recover them on restart. 
> If there are no meta entries for the table.
> While recovering the table we are checking whether table exists in meta or 
> not, if not we are removing the znode. After removing znode we need to throw 
> TableNotFoundException. Presently not throwing the exception so the znode 
> will be recrated. It will be stale forever. Even on master restart we cannot 
> delete. We cannot create the table with same name also.
> {code}
>       // Check if table exists
>       if (!MetaReader.tableExists(catalogTracker, tableName)) {
>         // retainAssignment is true only during recovery.  In normal case it 
> is false
>         if (!this.skipTableStateCheck) {
>           throw new TableNotFoundException(tableName);
>         } 
>         try {
>           this.assignmentManager.getZKTable().removeEnablingTable(tableName, 
> true);
>         } catch (KeeperException e) {
>           // TODO : Use HBCK to clear such nodes
>           LOG.warn("Failed to delete the ENABLING node for the table " + 
> tableName
>               + ".  The table will remain unusable. Run HBCK to manually fix 
> the problem.");
>         }
>       }
> {code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to