Aman Sinha has posted comments on this change. ( http://gerrit.cloudera.org:8080/14813 )
Change subject: IMPALA-9162: Do not apply inferred predicate to outer joins ...................................................................... Patch Set 7: (1 comment) http://gerrit.cloudera.org:8080/#/c/14813/6/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java File fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java: http://gerrit.cloudera.org:8080/#/c/14813/6/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java@1201 PS6, Line 1201: analyzer.markConjunctsAssigned(preds); > I should note that I tried adding additional check in Analyzer.createEquivC So, put differently, if we check for the outer join at the Subquery level (or WITH clause level), it doesn't know that the column came from an outer join. We could probably pass the inlineViewRef's expr substitution map down to that method and before creating the inferred predicate, first check the substitution map...but when I look at the Expr.trySubstitute() method, its more complicated than just a lookup .. it does a recursive substitution and also removes implicit casts. -- To view, visit http://gerrit.cloudera.org:8080/14813 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ie9521bd768c4b333069c34d5c1e11b10ea535827 Gerrit-Change-Number: 14813 Gerrit-PatchSet: 7 Gerrit-Owner: Aman Sinha <[email protected]> Gerrit-Reviewer: Aman Sinha <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Quanlong Huang <[email protected]> Gerrit-Reviewer: Tim Armstrong <[email protected]> Gerrit-Comment-Date: Tue, 10 Dec 2019 01:23:30 +0000 Gerrit-HasComments: Yes
