[ https://issues.apache.org/jira/browse/PHOENIX-4917?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16637429#comment-16637429 ]
Gerald Sangudi commented on PHOENIX-4917: ----------------------------------------- [~twdsi...@gmail.com] - How do I convert an integer PK value, say 10, into a []byte that can be used as a split point? > ClassCastException when projecting array elements in hash join > -------------------------------------------------------------- > > Key: PHOENIX-4917 > URL: https://issues.apache.org/jira/browse/PHOENIX-4917 > Project: Phoenix > Issue Type: Bug > Affects Versions: 4.15.0, 4.14.1 > Reporter: Gerald Sangudi > Assignee: Gerald Sangudi > Priority: Blocker > Fix For: 4.15.0, 4.14.1 > > Attachments: PHOENIX-4917.patch, PHOENIX-4917.patch, > PHOENIX-4917.patch, PHOENIX-4917.patch > > > This bug was introduced in the fix for PHOENIX-4791. > When projecting array elements in hash join, we now generate both > ProjectedTupleValue and MultiKeyTupleValue. Before the fix for PHOENIX-4791, > hash join was only generating ProjectedTupleValue, and there were two lines > of code with class casts that reflected this assumption. The fix is to handle > both ProjectedTupleValue and MultiKeyTupleValue, while continuing to > propagate the array cell as in PHOENIX-4791. > > The stack trace with the ClassCastException: > Caused by: > org.apache.hadoop.hbase.ipc.RemoteWithExtrasException(org.apache.hadoop.hbase.DoNotRetryIOException): > org.apache.hadoop.hbase.DoNotRetryIOException: > GENO_DOSE,,1537598769044.1a6cb8853b036c59e7515d8e876e28c5.: > org.apache.phoenix.schema.tuple.MultiKeyValueTuple cannot be cast to > org.apache.phoenix.execute.TupleProjector$ProjectedValueTuple > at org.apache.phoenix.util.ServerUtil.createIOException(ServerUtil.java:96) > at org.apache.phoenix.util.ServerUtil.throwIOException(ServerUtil.java:62) > at > org.apache.phoenix.coprocessor.HashJoinRegionScanner.nextRaw(HashJoinRegionScanner.java:300) > at > org.apache.phoenix.coprocessor.DelegateRegionScanner.nextRaw(DelegateRegionScanner.java:82) > at > org.apache.phoenix.coprocessor.DelegateRegionScanner.nextRaw(DelegateRegionScanner.java:82) > at > org.apache.phoenix.coprocessor.BaseScannerRegionObserver$RegionScannerHolder.nextRaw(BaseScannerRegionObserver.java:294) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2633) > at > org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2837) > at > org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:34950) > at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2339) > at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:123) > at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:188) > at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:168) > Caused by: java.lang.ClassCastException: > org.apache.phoenix.schema.tuple.MultiKeyValueTuple cannot be cast to > org.apache.phoenix.execute.TupleProjector$ProjectedValueTuple > at > org.apache.phoenix.coprocessor.HashJoinRegionScanner.processResults(HashJoinRegionScanner.java:220) > at > org.apache.phoenix.coprocessor.HashJoinRegionScanner.nextRaw(HashJoinRegionScanner.java:294) -- This message was sent by Atlassian JIRA (v7.6.3#76005)