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

Srikanth Srungarapu commented on HBASE-13394:
---------------------------------------------

bq. then on any exception from AC we were not removing it back
Can you please elaborate on why AC would throw an exception in this case (am 
assuming that user already has necessary permissions) when quota is enabled.

It would be great if we can capture the failures in the server logs. Please add 
logging coverage.
{code}
+    } catch (IOException e) {
+      this.quotaManager.removeTableFromNamespaceQuota(tableName);
+      throw e;
{code}

Mind deleting the namespace in test..
{code} +    ADMIN.createNamespace(nspDesc); {code}





> Failed to recreate a table when quota is enabled
> ------------------------------------------------
>
>                 Key: HBASE-13394
>                 URL: https://issues.apache.org/jira/browse/HBASE-13394
>             Project: HBase
>          Issue Type: Bug
>          Components: security
>    Affects Versions: 2.0.0
>            Reporter: Y. SREENIVASULU REDDY
>            Assignee: Ashish Singhi
>              Labels: quota
>             Fix For: 2.0.0
>
>         Attachments: HBASE-13394.patch
>
>
> 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.
> {noformat}
> 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)
> {noformat}
> P.S: Line numbers may not be in sync.



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

Reply via email to