[ https://issues.apache.org/jira/browse/IMPALA-11008?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Xianqing He updated IMPALA-11008: --------------------------------- Description: {code:java} Query: explain select * from ( select case when id is not null and some_nulls is null then true else null end a from (select straight_join t1.id, t2.some_nulls from functional.nullrows t1 left join functional.nullrows t2 on t1.id=t2.id) t)t where a is not null Max Per-Host Resource Reservation: Memory=1.95MB Threads=3 Per-Host Resource Estimates: Memory=66MB Codegen disabled by planner "" PLAN-ROOT SINK | 02:HASH JOIN [LEFT OUTER JOIN] | hash predicates: t1.id = t2.id | other predicates: CASE WHEN t1.id IS NOT NULL AND t2.some_nulls IS NULL THEN TRUE ELSE NULL END IS NOT NULL | row-size=39B cardinality=26 | |--01:SCAN HDFS [functional.nullrows t2] | partitions=1/1 files=1 size=541B | predicates: CASE WHEN t2.id IS NOT NULL AND t2.some_nulls IS NULL THEN TRUE ELSE NULL END IS NOT NULL | row-size=26B cardinality=3 | 00:SCAN HDFS [functional.nullrows t1] partitions=1/1 files=1 size=541B row-size=13B cardinality=26 {code} It is incorrect to propagate this inferred predicates into a plan subtree that is on the nullable side of an outer join. was: {code:java} Query: explain select * from ( select case when id is not null and some_nulls is null then true else null end a from (select straight_join t1.id, t2.some_nulls from functional.nullrows t1 left join functional.nullrows t2 on t1.id=t2.id) t)t where a is not null Max Per-Host Resource Reservation: Memory=1.95MB Threads=3 Per-Host Resource Estimates: Memory=66MB Codegen disabled by planner "" PLAN-ROOT SINK | 02:HASH JOIN [LEFT OUTER JOIN] | hash predicates: t1.id = t2.id | other predicates: CASE WHEN t1.id IS NOT NULL AND t2.some_nulls IS NULL THEN TRUE ELSE NULL END IS NOT NULL | row-size=39B cardinality=26 | |--01:SCAN HDFS [functional.nullrows t2] | partitions=1/1 files=1 size=541B | predicates: CASE WHEN t2.id IS NOT NULL AND t2.some_nulls IS NULL THEN TRUE ELSE NULL END IS NOT NULL | row-size=26B cardinality=3 | 00:SCAN HDFS [functional.nullrows t1] partitions=1/1 files=1 size=541B row-size=13B cardinality=26 {code} It is incorrect to propagate inferred predicates into a plan subtree that is on the nullable side of an outer join. > Incorrect to propagate inferred predicates into a plan subtree that is on the > nullable side of an outer join > ------------------------------------------------------------------------------------------------------------ > > Key: IMPALA-11008 > URL: https://issues.apache.org/jira/browse/IMPALA-11008 > Project: IMPALA > Issue Type: Bug > Components: Frontend > Reporter: Xianqing He > Assignee: Xianqing He > Priority: Major > > {code:java} > Query: explain select * from ( > select case when id is not null and some_nulls is null then true else null > end a from (select straight_join t1.id, t2.some_nulls from > functional.nullrows t1 left join functional.nullrows t2 on t1.id=t2.id) t)t > where a is not null > Max Per-Host Resource Reservation: Memory=1.95MB Threads=3 > Per-Host Resource Estimates: Memory=66MB > Codegen disabled by planner > "" > PLAN-ROOT SINK > | > 02:HASH JOIN [LEFT OUTER JOIN] > | hash predicates: t1.id = t2.id > | other predicates: CASE WHEN t1.id IS NOT NULL AND t2.some_nulls IS NULL > THEN TRUE ELSE NULL END IS NOT NULL > | row-size=39B cardinality=26 > | > |--01:SCAN HDFS [functional.nullrows t2] > | partitions=1/1 files=1 size=541B > | predicates: CASE WHEN t2.id IS NOT NULL AND t2.some_nulls IS NULL THEN > TRUE ELSE NULL END IS NOT NULL > | row-size=26B cardinality=3 > | > 00:SCAN HDFS [functional.nullrows t1] > partitions=1/1 files=1 size=541B > row-size=13B cardinality=26 {code} > It is incorrect to propagate this inferred predicates into a plan subtree > that is on the nullable side of an outer join. > -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org For additional commands, e-mail: issues-all-h...@impala.apache.org