phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesse Yates (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (PHOENIX-1226) Exception in Tracing
Date Tue, 02 Sep 2014 18:43:21 GMT

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

Jesse Yates updated PHOENIX-1226:
---------------------------------
    Attachment: phoenix-1226-4.0-v1.patch

Sorry, better version - forgot to convert the integer to a string first in TracingCompat (so
we at least use an uniform interface for writing annotations)

> Exception in Tracing
> --------------------
>
>                 Key: PHOENIX-1226
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1226
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.1
>         Environment: 0.98.5 hbase, 4.1.0 phoenix
>            Reporter: Dan Di Spaltro
>            Assignee: Jesse Yates
>         Attachments: phoenix-1226-4.0-v0.patch, phoenix-1226-4.0-v1.patch
>
>
> I was exposed to an exception in the tracing code, during my test setup of Phoenix in
the following code:
> {code}
> 58062 [defaultRpcServer.handler=2,queue=0,port=53950] WARN  org.apache.hadoop.ipc.RpcServer
 - defaultRpcServer.handler=2,queue=0,port=53950: caught: java.lang.IllegalArgumentException:
offset (0) + length (4) exceed the capacity of the array: 3
> 	at org.apache.hadoop.hbase.util.Bytes.explainWrongLengthOrOffset(Bytes.java:600)
> 	at org.apache.hadoop.hbase.util.Bytes.toInt(Bytes.java:749)
> 	at org.apache.hadoop.hbase.util.Bytes.toInt(Bytes.java:725)
> 	at org.apache.phoenix.trace.TracingCompat.readAnnotation(TracingCompat.java:56)
> 	at org.apache.phoenix.trace.TraceMetricSource.receiveSpan(TraceMetricSource.java:121)
> 	at org.cloudera.htrace.Tracer.deliver(Tracer.java:81)
> 	at org.cloudera.htrace.impl.MilliSpan.stop(MilliSpan.java:70)
> 	at org.cloudera.htrace.TraceScope.close(TraceScope.java:70)
> 	at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:106)
> 	at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:114)
> 	at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:94)
> 	at java.lang.Thread.run(Thread.java:744)
> {code}
> It is related to the following line of code where we interpret all KV annotation values
as byte-wise integers here:
> https://github.com/apache/phoenix/blob/v4.1.0/phoenix-hadoop-compat/src/main/java/org/apache/phoenix/trace/TracingCompat.java#L56
> Here is where HBase is adding a non-integer KV annotation:
> https://github.com/apache/hbase/blob/0.98.5/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RequestContext.java#L105
> The fix should be simple, but I am not aware of all the related issues in changing this.
> cc [~jesse_yates], [~samarth.jain@gmail.com], [~giacomotaylor]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message