hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Yuan Jiang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-16627) AssignmentManager#isDisabledorDisablingRegionInRIT should check whether table exists
Date Tue, 13 Sep 2016 17:25:20 GMT

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

Stephen Yuan Jiang commented on HBASE-16627:
--------------------------------------------

That is true, {{isTableState()}} 'eats' the TableNotFoundException exception from {{getTableState()}}
and log an ERROR.  

{noformat}
  @NonNull
  public TableState.State getTableState(TableName tableName) throws IOException {
    TableState currentState = readMetaState(tableName);
    if (currentState == null) {
      throw new TableNotFoundException(tableName);
    }
    return currentState.getState();
  }
{noformat}

Now, I think we should lower the log level to WARN - this is not error, as caller could legally
ask for a non-existing table.

> AssignmentManager#isDisabledorDisablingRegionInRIT should check whether table exists
> ------------------------------------------------------------------------------------
>
>                 Key: HBASE-16627
>                 URL: https://issues.apache.org/jira/browse/HBASE-16627
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ted Yu
>            Assignee: Stephen Yuan Jiang
>            Priority: Minor
>
> [~stack] first reported this issue when he played with backup feature.
> The following exception can be observed in backup unit tests:
> {code}
> 2016-09-13 16:21:57,661 ERROR [ProcedureExecutor-3] master.TableStateManager(134): Unable
to get table hbase:backup state
> org.apache.hadoop.hbase.TableNotFoundException: hbase:backup
>         at org.apache.hadoop.hbase.master.TableStateManager.getTableState(TableStateManager.java:174)
>         at org.apache.hadoop.hbase.master.TableStateManager.isTableState(TableStateManager.java:131)
>         at org.apache.hadoop.hbase.master.AssignmentManager.isDisabledorDisablingRegionInRIT(AssignmentManager.java:1221)
>         at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:739)
>         at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1567)
>         at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1546)
>         at org.apache.hadoop.hbase.util.ModifyRegionUtils.assignRegions(ModifyRegionUtils.java:254)
>         at org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.assignRegions(CreateTableProcedure.java:430)
>         at org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.executeFromState(CreateTableProcedure.java:127)
>         at org.apache.hadoop.hbase.master.procedure.CreateTableProcedure.executeFromState(CreateTableProcedure.java:57)
>         at org.apache.hadoop.hbase.procedure2.StateMachineProcedure.execute(StateMachineProcedure.java:119)
>         at org.apache.hadoop.hbase.procedure2.Procedure.doExecute(Procedure.java:452)
>         at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.execProcedure(ProcedureExecutor.java:1066)
>         at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.execLoop(ProcedureExecutor.java:855)
>         at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.execLoop(ProcedureExecutor.java:808)
> {code}
> AssignmentManager#isDisabledorDisablingRegionInRIT should take table existence into account.



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

Mime
View raw message