Tim Armstrong has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/16338


Change subject: IMPALA-7782: fix constant NOT IN subqueries that can return 0 
rows
......................................................................

IMPALA-7782: fix constant NOT IN subqueries that can return 0 rows

The bug was the the statement rewriter converted NOT IN <subquery>
predicates to != <subquery> predicates when the subquery could
be an empty set. This was invalid, because NOT IN (<empty set>)
is true, but != (<empty set>) is false.

Testing:
Added targeted planner and end-to-end tests.

Ran exhaustive tests.

Change-Id: I66c726f0f66ce2f609e6ba44057191f5929a67fc
---
M fe/src/main/java/org/apache/impala/analysis/StmtRewriter.java
M 
testdata/workloads/functional-planner/queries/PlannerTest/subquery-rewrite.test
M 
testdata/workloads/functional-query/queries/QueryTest/subquery-in-constant-lhs.test
3 files changed, 115 insertions(+), 5 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/38/16338/1
--
To view, visit http://gerrit.cloudera.org:8080/16338
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I66c726f0f66ce2f609e6ba44057191f5929a67fc
Gerrit-Change-Number: 16338
Gerrit-PatchSet: 1
Gerrit-Owner: Tim Armstrong <tarmstr...@cloudera.com>

Reply via email to