Gerald Sangudi created PHOENIX-4917:
---------------------------------------
Summary: 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
Fix For: 4.15.0, 4.14.1
This bug was introduced in the fix for
https://issues.apache.org/jira/browse/PHOENIX-4791.
When projecting array elements in hash join, we now generate both
ProjectedTupleValue and MultiKeyTupleValue. Previously, we were only generating
ProjectedTupleValue, and there are two lines of code that contain this
assumption in class casts. The fix is to merge into the MultiKeyTupleValue,
while propagating 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)