You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Suhas Nalapure (JIRA)" <ji...@apache.org> on 2015/11/25 09:48:10 UTC

[jira] [Created] (PHOENIX-2452) Error: Does not support non-standard or non-equi correlated-subquery conditions.

Suhas Nalapure created PHOENIX-2452:
---------------------------------------

             Summary: Error: Does not support non-standard or non-equi correlated-subquery conditions.
                 Key: PHOENIX-2452
                 URL: https://issues.apache.org/jira/browse/PHOENIX-2452
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 4.6.0
            Reporter: Suhas Nalapure


java.sql.SQLFeatureNotSupportedException: Does not support non-standard or non-equi correlated-subquery conditions.

Steps to re-produce:
------------------------------------------------------------------------------------------
0: jdbc:phoenix:localhost:2181> create table temp (id bigint not null primary key, cumsum bigint );
No rows affected (0.74 seconds)
0: jdbc:phoenix:localhost:2181> upsert into temp values(1,5);
1 row affected (0.102 seconds)
0: jdbc:phoenix:localhost:2181> upsert into temp values(3, 10);
1 row affected (0.016 seconds)
0: jdbc:phoenix:localhost:2181> upsert into temp values(6, 12);
1 row affected (0.003 seconds)
0: jdbc:phoenix:localhost:2181> upsert into temp values(7, 17);
1 row affected (0.008 seconds)
0: jdbc:phoenix:localhost:2181> upsert into temp values(10, 19);
1 row affected (0.011 seconds)
0: jdbc:phoenix:localhost:2181> select t1.id, t2.id, t1.cumsum, t2.cumsum, t1.cumsum - t2.cumsum from temp t1, temp t2 where t2.id = (select max(id) from temp where id < t1.id) and t1.cumsum > t2.cumsum ;
Error: Does not support non-standard or non-equi correlated-subquery conditions. (state=,code=0)
java.sql.SQLFeatureNotSupportedException: Does not support non-standard or non-equi correlated-subquery conditions.
        at org.apache.phoenix.compile.SubqueryRewriter$JoinConditionExtractor.leaveBooleanNode(SubqueryRewriter.java:479)
        at org.apache.phoenix.compile.SubqueryRewriter$JoinConditionExtractor.visitLeave(SubqueryRewriter.java:499)
        at org.apache.phoenix.compile.SubqueryRewriter$JoinConditionExtractor.visitLeave(SubqueryRewriter.java:405)
        at org.apache.phoenix.parse.ComparisonParseNode.accept(ComparisonParseNode.java:47)
        at org.apache.phoenix.compile.SubqueryRewriter.visitLeave(SubqueryRewriter.java:207)
        at org.apache.phoenix.compile.SubqueryRewriter.visitLeave(SubqueryRewriter.java:70)
        at org.apache.phoenix.parse.ComparisonParseNode.accept(ComparisonParseNode.java:47)
        at org.apache.phoenix.parse.CompoundParseNode.acceptChildren(CompoundParseNode.java:64)
        at org.apache.phoenix.parse.AndParseNode.accept(AndParseNode.java:47)
        at org.apache.phoenix.parse.ParseNodeRewriter.rewrite(ParseNodeRewriter.java:48)
        at org.apache.phoenix.compile.SubqueryRewriter.transform(SubqueryRewriter.java:84)
        at org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:375)
        at org.apache.phoenix.jdbc.PhoenixStatement$ExecutableSelectStatement.compilePlan(PhoenixStatement.java:354)
        at org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:260)
        at org.apache.phoenix.jdbc.PhoenixStatement$1.call(PhoenixStatement.java:255)
        at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
        at org.apache.phoenix.jdbc.PhoenixStatement.executeQuery(PhoenixStatement.java:254)
        at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1382)
        at sqlline.Commands.execute(Commands.java:822)
        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)



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