[
https://issues.apache.org/jira/browse/HBASE-10675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13923557#comment-13923557
]
Anoop Sam John commented on HBASE-10675:
----------------------------------------
We can avoid the hard coded names in IntegrationTestIngestWithACL. That one can
take the names as arg. When these args are passed to LTT, now in the patch, it
passed as top level args. What I say is make them pass as sub args for the
generator. We pass generator arg to LTT from IntegrationTestIngestWithACL.
Along with this class name we can pass some more args also as colon seperated.
So pass it as
LoadTestDataGeneratorWithACL:<super user>:<comma seperated users>:<other args
if any>
We have instance of check for the generator in LTT. There we make it is
necessary that if LoadTestDataGeneratorWithACL is the generator then class name
should be followed with at least 2 args super user and other users.. If still
some more remaining, pass them as args to the generator class. (Well this is
also missing in the patch) Def names assumed in the LTT also can be removed
I would say. U can go with def values for the 2 args in
IntegrationTestIngestWithACL.
> IntegrationTestIngestWithACL should allow User to be passed as Parameter
> ------------------------------------------------------------------------
>
> Key: HBASE-10675
> URL: https://issues.apache.org/jira/browse/HBASE-10675
> Project: HBase
> Issue Type: Bug
> Reporter: Ted Yu
> Assignee: ramkrishna.s.vasudevan
> Attachments: HBASE-10675_1.patch
>
>
> The IntegrationTestIngestWithACL needs to be modified to allow the user to be
> passed in as an argument at run time. Currently, the test is using a fixed
> set of user names which cannot be authenticated via Kerberos, causing the
> test to fail. Allowing the username to be passed at run time will allow a
> user that is already authenticated by Kerberos to be used, and resolve the
> failure.
> {code}
> 2014-02-06 02:58:25,315|beaver.machine|INFO|RUNNING: /usr/bin/kinit -c
> /hbase.kerberos.ticket -k -t /home/hadoopqa/keytabs/hbase.headless.keytab
> hbase
> 2014-02-06 02:58:25,325|beaver.machine|INFO|RUNNING: /usr/lib/hbase/bin/hbase
> --config /tmp/hbaseConf org.apache.hadoop.hbase.IntegrationTestsDriver -regex
> IntegrationTestIngestWithACL
> 2014-02-06 02:58:34,489|beaver.machine|INFO|2014-02-06 02:58:34,489 DEBUG
> HBaseWriterThreadWithACL_1 token.AuthenticationTokenSelector: No matching
> token found
> 2014-02-06 02:58:34,493|beaver.machine|INFO|2014-02-06 02:58:34,489 DEBUG
> HBaseWriterThreadWithACL_1 security.HBaseSaslRpcClient: Creating SASL GSSAPI
> client. Server's Kerberos principal name is
> hbase/[email protected]
> 2014-02-06 02:58:34,493|beaver.machine|INFO|2014-02-06 02:58:34,491 WARN
> HBaseWriterThreadWithACL_1 security.UserGroupInformation:
> PriviledgedActionException as:owner (auth:SIMPLE)
> cause:javax.security.sasl.SaslException: GSS initiate failed Caused by
> GSSException: No valid credentials provided (Mechanism level: Failed to find
> any Kerberos tgt)
> 2014-02-06 02:58:34,493|beaver.machine|INFO|2014-02-06 02:58:34,492 WARN
> HBaseWriterThreadWithACL_1 ipc.RpcClient: Exception encountered while
> connecting to the server : javax.security.sasl.SaslException: GSS initiate
> failed Caused by GSSException: No valid credentials provided (Mechanism
> level: Failed to find any Kerberos tgt)
> 2014-02-06 02:58:34,498|beaver.machine|INFO|2014-02-06 02:58:34,493 FATAL
> HBaseWriterThreadWithACL_1 ipc.RpcClient: SASL authentication failed. The
> most likely cause is missing or invalid credentials. Consider 'kinit'.
> 2014-02-06
> 02:58:34,499|beaver.machine|INFO|javax.security.sasl.SaslException: GSS
> initiate failed Caused by GSSException: No valid credentials provided
> (Mechanism level: Failed to find any Kerberos tgt)
> 2014-02-06 02:58:34,499|beaver.machine|INFO|at
> com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(GssKrb5Client.java:194)
> 2014-02-06 02:58:34,499|beaver.machine|INFO|at
> org.apache.hadoop.hbase.security.HBaseSaslRpcClient.saslConnect(HBaseSaslRpcClient.java:152)
> 2014-02-06 02:58:34,500|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient$Connection.setupSaslConnection(RpcClient.java:762)
> 2014-02-06 02:58:34,500|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient$Connection.access$600(RpcClient.java:354)
> 2014-02-06 02:58:34,500|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient$Connection$2.run(RpcClient.java:883)
> 2014-02-06 02:58:34,501|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient$Connection$2.run(RpcClient.java:880)
> 2014-02-06 02:58:34,501|beaver.machine|INFO|at
> java.security.AccessController.doPrivileged(Native Method)
> 2014-02-06 02:58:34,501|beaver.machine|INFO|at
> javax.security.auth.Subject.doAs(Subject.java:396)
> 2014-02-06 02:58:34,501|beaver.machine|INFO|at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
> 2014-02-06 02:58:34,502|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient$Connection.setupIOstreams(RpcClient.java:880)
> 2014-02-06 02:58:34,502|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient.getConnection(RpcClient.java:1536)
> 2014-02-06 02:58:34,502|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient.call(RpcClient.java:1425)
> 2014-02-06 02:58:34,502|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient.callBlockingMethod(RpcClient.java:1654)
> 2014-02-06 02:58:34,503|beaver.machine|INFO|at
> org.apache.hadoop.hbase.ipc.RpcClient$BlockingRpcChannelImplementation.callBlockingMethod(RpcClient.java:1712)
> 2014-02-06 02:58:34,503|beaver.machine|INFO|at
> org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$BlockingStub.get(ClientProtos.java:28833)
> 2014-02-06 02:58:34,503|beaver.machine|INFO|at
> org.apache.hadoop.hbase.protobuf.ProtobufUtil.getRowOrBefore(ProtobufUtil.java:1466)
> 2014-02-06 02:58:34,503|beaver.machine|INFO|at
> org.apache.hadoop.hbase.client.HTable$2.call(HTable.java:701)
> 2014-02-06 02:58:34,504|beaver.machine|INFO|at
> org.apache.hadoop.hbase.client.HTable$2.call(HTable.java:699)
> 2014-02-06 02:58:34,504|beaver.machine|INFO|at
> org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:120)
> 2014-02-06 02:58:34,504|beaver.machine|INFO|at
> org.apache.hadoop.hbase.client.HTable.getRowOrBefore(HTable.java:705)
> 2014-02-06 02:58:34,504|beaver.machine|INFO|at
> org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:144)
> {code}
> Thanks to Huned who discovered this issue.
--
This message was sent by Atlassian JIRA
(v6.2#6252)