Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
Impala 2.5.0
Description
Query and incorrect plan:
select 1 from functional.alltypestiny a left outer join functional.alltypestiny b on a.id = b.id inner join functional.alltypestiny c on b.int_col < 0 +----------------------------------------------------------+ | Explain String | +----------------------------------------------------------+ | Estimated Per-Host Requirements: Memory=64.00MB VCores=2 | | | | 07:EXCHANGE [UNPARTITIONED] | | | | | 04:NESTED LOOP JOIN [CROSS JOIN, BROADCAST] | | | | | |--06:EXCHANGE [BROADCAST] | | | | | | | 02:SCAN HDFS [functional.alltypestiny c] | | | partitions=4/4 files=4 size=460B | | | | | 03:HASH JOIN [LEFT OUTER JOIN, BROADCAST] | | | hash predicates: a.id = b.id <-- b.int_col < 0 should also be in otherPredicates | | | | | |--05:EXCHANGE [BROADCAST] | | | | | | | 01:SCAN HDFS [functional.alltypestiny b] | | | partitions=4/4 files=4 size=460B | | | predicates: b.int_col < 0 | | | | | 00:SCAN HDFS [functional.alltypestiny a] | | partitions=4/4 files=4 size=460B | +----------------------------------------------------------+
The result set should clearly be empty because there are no rows that satisfy b.int_col < 0, but the returned result set is non-empty.