You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@accumulo.apache.org by "John Vines (Reopened) (JIRA)" <ji...@apache.org> on 2012/01/19 18:23:49 UTC

[jira] [Reopened] (ACCUMULO-328) NPE when getting user authorizations

     [ https://issues.apache.org/jira/browse/ACCUMULO-328?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Vines reopened ACCUMULO-328:
---------------------------------


I was playing fast and loose. Should be more specific about checking values instead of just catching exceptions.
                
> NPE when getting user authorizations
> ------------------------------------
>
>                 Key: ACCUMULO-328
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-328
>             Project: Accumulo
>          Issue Type: Bug
>          Components: client, tserver
>            Reporter: Keith Turner
>            Assignee: John Vines
>             Fix For: 1.4.0
>
>
> While running the concurrent random walk test, saw the following bug.  I think a user was deleted at around the same time the request for user auths came in.
> Saw the follwing error in the random walk logs.
> {noformat}
> 19 01:42:10,810 [randomwalk.Framework] ERROR: Error during random walk
> java.lang.Exception: Error running node Concurrent.xml
>         at org.apache.accumulo.server.test.randomwalk.Module.visit(Module.java:253)
>         at org.apache.accumulo.server.test.randomwalk.Framework.run(Framework.java:61)
>         at org.apache.accumulo.server.test.randomwalk.Framework.main(Framework.java:114)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.accumulo.start.Main$1.run(Main.java:89)
>         at java.lang.Thread.run(Thread.java:662)
> Caused by: java.lang.Exception: Error running node ct.ChangeAuthorizations
>         at org.apache.accumulo.server.test.randomwalk.Module.visit(Module.java:253)
>         at org.apache.accumulo.server.test.randomwalk.Module.visit(Module.java:249)
>         ... 8 more
> Caused by: org.apache.accumulo.core.client.AccumuloException: org.apache.thrift.TApplicationException: Internal error processing getUserAuthorizations
>         at org.apache.accumulo.core.client.admin.SecurityOperationsImpl.execute(SecurityOperationsImpl.java:78)
>         at org.apache.accumulo.core.client.admin.SecurityOperationsImpl.getUserAuthorizations(SecurityOperationsImpl.java:221)
>         at org.apache.accumulo.server.test.randomwalk.concurrent.ChangeAuthorizations.visit(ChangeAuthorizations.java:43)
>         at org.apache.accumulo.server.test.randomwalk.Module.visit(Module.java:249)
>         ... 9 more
> Caused by: org.apache.thrift.TApplicationException: Internal error processing getUserAuthorizations
>         at org.apache.thrift.TApplicationException.read(TApplicationException.java:108)
>         at org.apache.accumulo.core.client.impl.thrift.ClientService$Client.recv_getUserAuthorizations(ClientService.java:644)
>         at org.apache.accumulo.core.client.impl.thrift.ClientService$Client.getUserAuthorizations(ClientService.java:625)
>         at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at cloudtrace.instrument.thrift.TraceWrap$2.invoke(TraceWrap.java:83)
>         at $Proxy0.getUserAuthorizations(Unknown Source)
>         at org.apache.accumulo.core.client.admin.SecurityOperationsImpl$6.execute(SecurityOperationsImpl.java:224)
>         at org.apache.accumulo.core.client.admin.SecurityOperationsImpl$6.execute(SecurityOperationsImpl.java:221)
>         at org.apache.accumulo.core.client.impl.ServerClient.executeRaw(ServerClient.java:84)
>         at org.apache.accumulo.core.client.admin.SecurityOperationsImpl.execute(SecurityOperationsImpl.java:66)
>         ... 12 more
> {noformat}
> Searched the tablet server logs by time to find the server that execute the security operation and found the following.
> {noformat}
> 19 01:42:10,808 [thrift.ClientService$Processor] ERROR: Internal error processing getUserAuthorizations
> java.lang.IllegalArgumentException: argument was null:Is null- arg1? true
>         at org.apache.accumulo.core.util.ArgumentChecker.notNull(ArgumentChecker.java:31)
>         at org.apache.accumulo.core.security.Authorizations.<init>(Authorizations.java:102)
>         at org.apache.accumulo.server.security.ZKAuthenticator$Tool.convertAuthorizations(ZKAuthenticator.java:641)
>         at org.apache.accumulo.server.security.ZKAuthenticator.getUserAuthorizations(ZKAuthenticator.java:341)
>         at org.apache.accumulo.server.security.Auditor.getUserAuthorizations(Auditor.java:137)
>         at org.apache.accumulo.server.client.ClientServiceHandler.getUserAuthorizations(ClientServiceHandler.java:145)
>         at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at cloudtrace.instrument.thrift.TraceWrap$1.invoke(TraceWrap.java:58)
>         at $Proxy2.getUserAuthorizations(Unknown Source)
>         at org.apache.accumulo.core.client.impl.thrift.ClientService$Processor$getUserAuthorizations.process(ClientService.java:2371)
>         at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Processor.process(TabletClientService.java:2037)
>         at org.apache.accumulo.server.util.TServerUtils$TimedProcessor.process(TServerUtils.java:151)
>         at org.apache.thrift.server.TNonblockingServer$FrameBuffer.invoke(TNonblockingServer.java:631)
>         at org.apache.accumulo.server.util.TServerUtils$THsHaServer$Invocation.run(TServerUtils.java:199)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>         at org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:34)
>         at java.lang.Thread.run(Thread.java:662)
> {noformat}
> Need better debugging info when this occurs on the client side, need to know which tablet server.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira