Andrew Purtell created HBASE-10220:
--------------------------------------

             Summary: TestVisibilityLabelsWithACL is not setting up the 
minicluster correctly
                 Key: HBASE-10220
                 URL: https://issues.apache.org/jira/browse/HBASE-10220
             Project: HBase
          Issue Type: Bug
    Affects Versions: 0.98.0, 0.99.0
            Reporter: Andrew Purtell
             Fix For: 0.98.0, 0.99.0


TestVisibilityLabelsWithACL is not setting up the secure minicluster correctly. 
The user running the test is the superuser. However, a principal based on the 
user's account is created per virtual slave. We need to add all of these test 
accounts to the superusers list also, or it is as if someone deployed HBase 
with multiple service principals and didn't put them all into the 
superuserlist. (This also makes me suspicious about this test, it's not 
actually failing...)

You can see the issue here:
{noformat}
2013-12-20 18:25:44,979 WARN  [htable-pool42-t1] client.AsyncProcess(664): #57, 
table=hbase:meta, attempt=1/350 failed 1 ops, last exception: 
org.apache.hadoop.hbase.security.AccessDeniedException: 
org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient 
permissions (user=apurtell.hfs.1, scope=hbase:meta, 
family=info:server|info:serverstartcode|info:seqnumDuringOpen, action=WRITE)
        at 
org.apache.hadoop.hbase.security.access.AccessController.requireCoveringPermission(AccessController.java:567)
        at 
org.apache.hadoop.hbase.security.access.AccessController.prePut(AccessController.java:1139)
        at 
org.apache.hadoop.hbase.regionserver.RegionCoprocessorHost.prePut(RegionCoprocessorHost.java:964)
        at 
org.apache.hadoop.hbase.regionserver.HRegion.doPreMutationHook(HRegion.java:2131)
        at 
org.apache.hadoop.hbase.regionserver.HRegion.batchMutate(HRegion.java:2106)
        at 
org.apache.hadoop.hbase.regionserver.HRegion.batchMutate(HRegion.java:2062)
        at 
org.apache.hadoop.hbase.regionserver.HRegion.batchMutate(HRegion.java:2066)
        at 
org.apache.hadoop.hbase.regionserver.HRegionServer.doBatchOp(HRegionServer.java:4206)
        at 
org.apache.hadoop.hbase.regionserver.HRegionServer.doNonAtomicRegionMutation(HRegionServer.java:3448)
        at 
org.apache.hadoop.hbase.regionserver.HRegionServer.multi(HRegionServer.java:3352)
        at 
org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:28460)
        at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2008)
        at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:92)
        at 
org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.consumerLoop(SimpleRpcScheduler.java:160)
        at 
org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.access$000(SimpleRpcScheduler.java:38)
        at 
org.apache.hadoop.hbase.ipc.SimpleRpcScheduler$1.run(SimpleRpcScheduler.java:110)
        at java.lang.Thread.run(Thread.java:744)
 on acer,47702,1387592735459, tracking started Fri Dec 20 18:25:44 PST 2013 - 
FAILED, NOT RETRYING ANYMORE
2013-12-20 18:25:44,980 DEBUG 
[PostOpenDeployTasks:bdd47ebb21d762590edf81127c8cd30f] client.HTable(949): 
hbase:meta: One or more of the operations have failed - waiting for all 
operation in progress to finish (successfully or not)
{noformat}

I think what I should do is take the code out of TestAccessController which 
handles this and put it into 
o.a.h.h.security.access.SecureTestUtil.enableSecurity and have this test use 
that.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Reply via email to