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

Andrew Purtell commented on HBASE-10527:
----------------------------------------

I think this could be a classloading problem. If I change the failing test to 
this:

{code}
  @Test
  public void testTokenCreation() throws Exception {
    Token<AuthenticationTokenIdentifier> token =
        secretManager.generateToken("testuser");

    AuthenticationTokenIdentifier ident = token.decodeIdentifier();
    assertEquals("Token username should match", "testuser",
        ident.getUsername());
    byte[] passwd = secretManager.retrievePassword(ident);
    assertTrue("Token password and password from secret manager should match",
        Bytes.equals(token.getPassword(), passwd));
  }
{code}

then we get back null from Token#decodeIdentifier:

{code}
  public T decodeIdentifier() throws IOException {
    Class<? extends TokenIdentifier> cls = getClassForIdentifier(getKind());
    if (cls == null) {
      return null;
    }
    TokenIdentifier tokenIdentifier = ReflectionUtils.newInstance(cls, null);
    ByteArrayInputStream buf = new ByteArrayInputStream(identifier);
    DataInputStream in = new DataInputStream(buf);  
    tokenIdentifier.readFields(in);
    in.close();
    return (T) tokenIdentifier;
  }
{code}


> TestTokenAuthentication fails with the IBM JDK
> ----------------------------------------------
>
>                 Key: HBASE-10527
>                 URL: https://issues.apache.org/jira/browse/HBASE-10527
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.98.0
>         Environment: IBM J9 VM (build 2.7, JRE 1.7.0 Linux amd64-64 
> Compressed References 20131114_175264 (JIT enabled, AOT enabled)
>            Reporter: Andrew Purtell
>            Assignee: Andrew Purtell
>            Priority: Minor
>         Attachments: 
> org.apache.hadoop.hbase.security.token.TestTokenAuthentication-output.txt.gz
>
>
> "DIGEST-MD5: digest response format violation. Mismatched response."
> The failure trace:
> {noformat}
> 2014-02-13 15:41:00,449 WARN  [RpcServer.reader=1,port=54751] 
> ipc.RpcServer$Listener(794): RpcServer.listener,port=54751: count of bytes 
> read: 0
> javax.security.sasl.SaslException: DIGEST-MD5: digest response format 
> violation. Mismatched response.
>         at 
> com.ibm.security.sasl.digest.DigestMD5Server.validateClientResponse(DigestMD5Server.java:614)
>         at 
> com.ibm.security.sasl.digest.DigestMD5Server.evaluateResponse(DigestMD5Server.java:234)
>         at 
> org.apache.hadoop.hbase.ipc.RpcServer$Connection.saslReadAndProcess(RpcServer.java:1315)
>         at 
> org.apache.hadoop.hbase.ipc.RpcServer$Connection.readAndProcess(RpcServer.java:1501)
>         at 
> org.apache.hadoop.hbase.ipc.RpcServer$Listener.doRead(RpcServer.java:790)
>         at 
> org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.doRunLoop(RpcServer.java:581)
>         at 
> org.apache.hadoop.hbase.ipc.RpcServer$Listener$Reader.run(RpcServer.java:556)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1170)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:640)
>         at java.lang.Thread.run(Thread.java:853)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to