You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Eric Newton (JIRA)" <ji...@apache.org> on 2013/01/15 16:50:12 UTC

[jira] [Updated] (ACCUMULO-965) Zookeeper session ids created as unsigned long, parsed in ZooUtils.java as signed long

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

Eric Newton updated ACCUMULO-965:
---------------------------------

    Priority: Critical  (was: Major)
    
> Zookeeper session ids created as unsigned long, parsed in ZooUtils.java as signed long
> --------------------------------------------------------------------------------------
>
>                 Key: ACCUMULO-965
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-965
>             Project: Accumulo
>          Issue Type: Bug
>          Components: start
>    Affects Versions: 1.4.2
>         Environment: Hadoop 0.20, ZooKeeper 3.4.3, CentOS 2.6, x64 CPU, Java 1.6.0_24
>            Reporter: Rich Alberth
>            Assignee: John Vines
>            Priority: Critical
>
> Seems like this may be a bug.  I looked at
> LiveTServerSet.assignTablet() it eventually calls Long.toHexString().
> The javadoc for toHexString() says the following.
> {code}Returns a string representation of the <code>long</code>
> argument as an unsigned integer in base 16.
> {code}
> However, the method we are using to parse the Long can not handle
> unsigned longs greater than MAX_LONG.  There does not seem to be a
> method in long that can parse the output of  toHexString().  For
> example the following will fail, any negative number will fail.
> {code}Long.parseLong(Long.toHexString(-1), 16);{code}
> Original Stack Dump:
> {code}
> java.lang.NumberFormatException: For input string: "b53c3a3610ce0001"
> 	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
> 	at java.lang.Long.parseLong(Long.java:422)
> 	at org.apache.accumulo.core.zookeeper.ZooUtil$LockID.<init>(ZooUtil.java:64)
> 	at org.apache.accumulo.server.tabletserver.TabletServer$ThriftClientHandler.checkPermission(TabletServer.java:1794)
> 	at org.apache.accumulo.server.tabletserver.TabletServer$ThriftClientHandler.loadTablet(TabletServer.java:1814)
> 	at org.apache.accumulo.core.tabletserver.thrift.TabletClientService$Processor.process(TabletClientService.java:2037)
> 	at org.apache.accumulo.server.util.TServerUtils$TimedProcessor.process(TServerUtils.java:154)
> 	at org.apache.thrift.server.TNonblockingServer$FrameBuffer.invoke(TNonblockingServer.java:631)
> 	at org.apache.accumulo.server.util.TServerUtils$THsHaServer$Invocation.run(TServerUtils.java:202)
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira