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

Failed to recreate a table when quota is enabled

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.1.0, 2.0.0
    • Fix Version/s: 1.1.0, 2.0.0
    • Component/s: security
    • Labels:

      Description

      Steps to reproduce.
      Enable quota by setting hbase.quota.enabled to true
      Create a table say with name 't1', make sure the creation fails after adding this table entry into namespace quota cache.
      Now correct the failure and recreate the table 't1'. It fails with below exception.

      2015-04-02 14:23:53,729 | ERROR | FifoRpcScheduler.handler1-thread-23 | Unexpected throwable object  | org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2154)
      java.lang.IllegalStateException: Table already in the cache t1
              at org.apache.hadoop.hbase.namespace.NamespaceTableAndRegionInfo.addTable(NamespaceTableAndRegionInfo.java:97)
              at org.apache.hadoop.hbase.namespace.NamespaceStateManager.addTable(NamespaceStateManager.java:171)
              at org.apache.hadoop.hbase.namespace.NamespaceStateManager.checkAndUpdateNamespaceTableCount(NamespaceStateManager.java:147)
              at org.apache.hadoop.hbase.namespace.NamespaceAuditor.checkQuotaToCreateTable(NamespaceAuditor.java:76)
              at org.apache.hadoop.hbase.quotas.MasterQuotaManager.checkNamespaceTableAndRegionQuota(MasterQuotaManager.java:344)
              at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1781)
              at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1818)
              at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:42273)
              at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2116)
              at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:108)
              at org.apache.hadoop.hbase.ipc.FifoRpcScheduler$1.run(FifoRpcScheduler.java:74)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
              at java.util.concurrent.FutureTask.run(FutureTask.java:262)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:745)
      

      P.S: Line numbers may not be in sync.

        Attachments

        1. HBASE-13394-v4.patch
          10 kB
          Matteo Bertozzi
        2. HBASE-13394-v3.patch
          10 kB
          Ashish Singhi
        3. HBASE-13394-v2.patch
          8 kB
          Ashish Singhi
        4. HBASE-13394-v1.patch
          7 kB
          Ashish Singhi
        5. HBASE-13394-branch-1.1.patch
          11 kB
          Ashish Singhi
        6. HBASE-13394.patch
          7 kB
          Ashish Singhi

          Issue Links

            Activity

              People

              • Assignee:
                ashish singhi Ashish Singhi
                Reporter:
                sreenivasulureddy Y. SREENIVASULU REDDY
              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: