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)

Reply via email to