You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Xiaolin Ha (JIRA)" <ji...@apache.org> on 2019/05/27 08:16:00 UTC

[jira] [Created] (HBASE-22479) Release sycLatch too early in CreateTable() to get table state failed in postCreateTable

Xiaolin Ha created HBASE-22479:
----------------------------------

             Summary: Release sycLatch too early in CreateTable() to get table state failed in postCreateTable
                 Key: HBASE-22479
                 URL: https://issues.apache.org/jira/browse/HBASE-22479
             Project: HBase
          Issue Type: Bug
          Components: master, rsgroup
    Affects Versions: 2.2.0
            Reporter: Xiaolin Ha
            Assignee: Xiaolin Ha


SycLatch will be released as soon as prepared create table.
But if in postCreateTable we need to get some info of the created table, it will be failed.
This can be reproduced by calling createTable() on clusters enabling rsgroup.
ERROR log is as follows,

2019-05-10,11:28:07,394 ERROR [RpcServer.default.FPBQ.Fifo.handler=254,queue=14,port=57900] org.apache.hadoop.hbase.master.TableStateManager: Unable to get table work:error1 state
org.apache.hadoop.hbase.master.TableStateManager$TableStateNotFoundException: work:error1
        at org.apache.hadoop.hbase.master.TableStateManager.getTableState(TableStateManager.java:215)
        at org.apache.hadoop.hbase.master.TableStateManager.isTableState(TableStateManager.java:147)
        at org.apache.hadoop.hbase.master.assignment.AssignmentManager.isTableDisabled(AssignmentManager.java:365)
        at org.apache.hadoop.hbase.rsgroup.RSGroupAdminServer.moveTables(RSGroupAdminServer.java:411)
        at org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint.assignTableToGroup(RSGroupAdminEndpoint.java:444)
        at org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint.postCreateTable(RSGroupAdminEndpoint.java:467)
        at org.apache.hadoop.hbase.master.MasterCoprocessorHost$13.call(MasterCoprocessorHost.java:351)
        at org.apache.hadoop.hbase.master.MasterCoprocessorHost$13.call(MasterCoprocessorHost.java:348)
        at org.apache.hadoop.hbase.coprocessor.CoprocessorHost$ObserverOperationWithoutResult.callObserver(CoprocessorHost.java:551)
        at org.apache.hadoop.hbase.coprocessor.CoprocessorHost.execOperation(CoprocessorHost.java:625)
        at org.apache.hadoop.hbase.master.MasterCoprocessorHost.postCreateTable(MasterCoprocessorHost.java:348)
        at org.apache.hadoop.hbase.master.HMaster$4.run(HMaster.java:2082)
        at org.apache.hadoop.hbase.master.procedure.MasterProcedureUtil.submitProcedure(MasterProcedureUtil.java:134)
        at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:2065)
        at org.apache.hadoop.hbase.master.MasterRpcServices.createTable(MasterRpcServices.java:681)
        at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java)
        at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:413)
        at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:132)
        at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:338)
        at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:318)


I think sycLatch of createTable should be released after postCreate in CTP. Any suggestions or concerns?





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