[ 
https://issues.apache.org/jira/browse/PHOENIX-4917?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16624856#comment-16624856
 ] 

ASF GitHub Bot commented on PHOENIX-4917:
-----------------------------------------

GitHub user geraldss opened a pull request:

    https://github.com/apache/phoenix/pull/356

    PHOENIX-4917 Fix ClassCastException when projecting array elements in hash 
join

    cc @twdsilva @JamesRTaylor @joshelser 

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/geraldss/phoenix master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/phoenix/pull/356.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #356
    
----
commit 19c87f24d99c7807df6dbc8288609a3ac083fec5
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-08-22T23:59:12Z

    PHOENIX-4791 Propagate projected array elements through hash join

commit 8c10d86028655435f962aeaba01f009cade58ef8
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-08-23T01:49:21Z

    PHOENIX-4791 Test array element projection with/without hash joins and full 
arrays

commit 58f14e94a2f4e933ad8a61517ff1ae5568a78b8b
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-08-23T15:07:09Z

    PHOENIX-4791 Add comments about propagating array element cell

commit b9ce327e6a473ff4e8d9314b342da06e78058461
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-08-30T23:25:45Z

    PHOENIX-4791 Skip dropTable() when testing array element projection

commit 46310eda603f2451009ade2ffd8befa9e702aa65
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-09-04T23:38:50Z

    PHOENIX-4791 Reduce source code line lengths for array element projection

commit d5dfeee7c1d25f42cb0acef221fc18d6f7ef1680
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-09-05T04:20:14Z

    PHOENIX-4791 Fix another source code line for array element projection

commit 11cce36576f2792f7ac0cfe0f8df2352734bd1b3
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-09-22T18:36:00Z

    PHOENIX-4917 Fix ClassCastException when projecting array elements in hash 
join

commit a5879535cec78604585678ffbeb11610386f045e
Author: Gerald Sangudi <gsangudi@...>
Date:   2018-09-22T23:06:38Z

    Merge remote-tracking branch 'upstream/master'

----


> 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: Major
>             Fix For: 4.15.0, 4.14.1
>
>         Attachments: 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)

Reply via email to