Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-19509

RSGroupAdminEndpoint#preCreateTable triggers TableNotFoundException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.0.0-alpha-4
    • 1.4.1, 2.0.0-beta-1, 2.0.0
    • None
    • None
    • Reviewed

    Description

      In a cluster where RS Group endpoint is installed, I noticed the following in master log:

      2017-12-13 21:42:14,230 ERROR [RpcServer.default.FPBQ.Fifo.handler=29,queue=2,port=20000] master.TableStateManager: Unable to get table ltt-diff state
      org.apache.hadoop.hbase.TableNotFoundException: ltt-diff
              at org.apache.hadoop.hbase.master.TableStateManager.getTableState(TableStateManager.java:175)
              at org.apache.hadoop.hbase.master.TableStateManager.isTableState(TableStateManager.java:132)
              at org.apache.hadoop.hbase.master.assignment.AssignmentManager.isTableDisabled(AssignmentManager.java:345)
              at org.apache.hadoop.hbase.rsgroup.RSGroupAdminServer.moveTables(RSGroupAdminServer.java:409)
              at org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint.assignTableToGroup(RSGroupAdminEndpoint.java:334)
              at org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint.preCreateTable(RSGroupAdminEndpoint.java:346)
              at org.apache.hadoop.hbase.master.MasterCoprocessorHost$11.call(MasterCoprocessorHost.java:319)
              at org.apache.hadoop.hbase.master.MasterCoprocessorHost$11.call(MasterCoprocessorHost.java:316)
              at org.apache.hadoop.hbase.coprocessor.CoprocessorHost$ObserverOperationWithoutResult.callObserver(CoprocessorHost.java:599)
              at org.apache.hadoop.hbase.coprocessor.CoprocessorHost.execOperation(CoprocessorHost.java:672)
              at org.apache.hadoop.hbase.master.MasterCoprocessorHost.preCreateTable(MasterCoprocessorHost.java:316)
              at org.apache.hadoop.hbase.master.HMaster$3.run(HMaster.java:1738)
              at org.apache.hadoop.hbase.master.procedure.MasterProcedureUtil.submitProcedure(MasterProcedureUtil.java:134)
              at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1734)
              at org.apache.hadoop.hbase.master.MasterRpcServices.createTable(MasterRpcServices.java:559)
      

      It seems RSGroupAdminEndpoint#preCreateTable should take into account that the table doesn't exist and avoid the extraneous TableNotFoundException .

      Attachments

        1. HBASE-19509-branch-1.patch
          1 kB
          Andrew Kyle Purtell
        2. HBASE-19509.patch
          1 kB
          Andrew Kyle Purtell

        Issue Links

          Activity

            People

              apurtell Andrew Kyle Purtell
              yuzhihong@gmail.com Ted Yu
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: