phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-2676) Cannot support join operations in scans with limit
Date Tue, 16 Feb 2016 07:13:18 GMT

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

Anoop Sam John commented on PHOENIX-2676:
-----------------------------------------

Patch looks good.
{code}
if (hasBatchLimit)
            throw new UnsupportedOperationException("Cannot support join operations in scans
with limit");
{code}
As at top of Exception stack, we can see a OutOfOrderScannerNextException, it is sure that
there is a retry happens from HBase client layer. Ideally in this kind of a case, there should
be any retry happening. There is no point..   If we throw an Exception of type DoNotRetryIOException,
the retry would have been avoided.   Can try fix that also?   Or can be in another jira also.

Yes [~alexdl] , the other jira also may be due to same bug. Mind testing once with this small
fix?

>  Cannot support join operations in scans with limit
> ---------------------------------------------------
>
>                 Key: PHOENIX-2676
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2676
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.6.0
>            Reporter: alex kamil
>            Assignee: Maryann Xue
>             Fix For: 4.7.0
>
>         Attachments: PHOENIX-2676-HBase-1.0.patch
>
>
> We're getting below exception in sqlline in phoenix 4.6 (community edition) with hbase1.0_cdh5.5,
any ideas?
> 0: jdbc:phoenix:localhost> select * from table2 B join (select id from table1) A on
A.id=B.otherid;
> java.lang.RuntimeException: org.apache.phoenix.exception.PhoenixIOException: org.apache.phoenix.exception.PhoenixIOException:
Failed after retry of OutOfOrderScannerNextException: was there a rpc timeout?
>         at sqlline.IncrementalRows.hasNext(IncrementalRows.java:73)
>      
> in regionserver log:
> 2016-02-10 22:39:13,579 DEBUG org.apache.hadoop.hbase.ipc.RpcServer: B.defaultRpcServer.handler=0,queue=0,port=60020:
callId: 2858 service: ClientService methodName: Scan size: 24 connection: 
> java.io.IOException: Cannot support join operations in scans with limit
>         at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2068)
>         at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:107)
>         at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
>         at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
>         at java.lang.Thread.run(Thread.java:744)
> Caused by: java.lang.UnsupportedOperationException: Cannot support join operations in
scans with limit
>         at org.apache.phoenix.coprocessor.HashJoinRegionScanner.processResults(HashJoinRegionScanner.java:120)
>         at org.apache.phoenix.coprocessor.HashJoinRegionScanner.nextRaw(HashJoinRegionScanner.java:270)
>         at org.apache.phoenix.coprocessor.DelegateRegionScanner.nextRaw(DelegateRegionScanner.java:77)
>         at org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2292)
>         at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:32205)
>         at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2034)
>         
> To Reproduce:
>  
> CREATE TABLE table1( id bigint not null, message varchar CONSTRAINT pk PRIMARY KEY (id)
);
> CREATE TABLE table2( id bigint not null, message varchar, otherid bigint  CONSTRAINT
pk PRIMARY KEY (id) );
> upsert into table1(id,message) values(123,'m1');
> upsert into table1(id,message) values(456,'m2');
> upsert into table2(id,message,otherid) values(789,'m1',123);
> 0: jdbc:phoenix:localhost> select * from table2 B join (select id from table1) A on
A.id=B.otherid;
> java.lang.RuntimeException: org.apache.phoenix.exception.PhoenixIOException: org.apache.phoenix.exception.PhoenixIOException:
Failed after retry of OutOfOrderScannerNextException: was there a rpc timeout?
>         at sqlline.IncrementalRows.hasNext(IncrementalRows.java:73)
>         at sqlline.TableOutputFormat.print(TableOutputFormat.java:33)
>         at sqlline.SqlLine.print(SqlLine.java:1653)
>         at sqlline.Commands.execute(Commands.java:833)
>         at sqlline.Commands.sql(Commands.java:732)
>         at sqlline.SqlLine.dispatch(SqlLine.java:808)
>         at sqlline.SqlLine.begin(SqlLine.java:681)
>         at sqlline.SqlLine.start(SqlLine.java:398)
>         at sqlline.SqlLine.main(SqlLine.java:292)
> 0: jdbc:phoenix:localhost>



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

Mime
View raw message