[
https://issues.apache.org/jira/browse/DRILL-3018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14537471#comment-14537471
]
Aman Sinha commented on DRILL-3018:
-----------------------------------
I was able to repro with your supplied tables. The query works if I disable
the lopt join planner.
{code}
alter session set `planner.enable_hep_join_opt` = false;
select * from j2 where c_integer > (select min(c_bigint) from j7 where
c_boolean is null);
+------------+------------+------------+------------+------------+------------+------------+-------------+------------+------------+------------+------------+------------+
| c_varchar | c_integer | c_bigint | c_float | c_double | c_date |
c_time | c_timestamp | c_boolean | d9 | d18 | d28 |
d38 |
+------------+------------+------------+------------+------------+------------+------------+-------------+------------+------------+------------+------------+------------+
+------------+------------+------------+------------+------------+------------+------------+-------------+------------+------------+------------+------------+------------+
No rows selected
{code}
This is likely related to costing changes for this new planner. [~jni] can you
take a look ?
> Queries with scalar aggregate and non equality (non correlated) fail to plan
> -----------------------------------------------------------------------------
>
> Key: DRILL-3018
> URL: https://issues.apache.org/jira/browse/DRILL-3018
> Project: Apache Drill
> Issue Type: Bug
> Components: Query Planning & Optimization
> Affects Versions: 1.0.0
> Reporter: Victoria Markman
> Assignee: Aman Sinha
> Attachments: tables.tar
>
>
> This is a regression.
> Both queries worked and returned correct result with May 7 build
> (mapr-drill-1.0.0.31658-1.noarch.rpm)
> Running with the latest build, I got these two failures:
> {code}
> select * from j2 where c_integer > (select min(c_bigint) from j7 where
> c_boolean is null)
> Failed with exception
> java.sql.SQLException: SYSTEM ERROR:
> org.apache.drill.exec.work.foreman.UnsupportedRelOperatorException: This
> query cannot be planned possibly due to either a cartesian join or an
> inequality
> select * from j2 where c_float < (select min(c_float) from j6 where c_boolean
> is null )
> Failed with exception
> java.sql.SQLException: SYSTEM ERROR:
> org.apache.drill.exec.work.foreman.UnsupportedRelOperatorException: This
> query cannot be planned possibly due to either a cartesian join or an
> inequality join
> {code}
> The common pattern between these queries is that function MIN is running over
> no rows, in both queries there is no correlation to the outer table.
> {code}
> -- Non correlated
> -- Greater than
> -- MIN returns NULL
> select * from j2 where c_integer > (select min(c_bigint) from j7 where
> c_boolean is null);
> -- Non correlated
> -- Less than
> -- MIN returns NULL
> select * from j2 where c_float < (select min(c_float) from j6 where c_boolean
> is null );
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)