Marcel Kornacker has posted comments on this change. Change subject: IMPALA-3071: Fix assignment of On-clause predicates belonging to an inner join. ......................................................................
Patch Set 2: (3 comments) haven't looked at everything yet http://gerrit.cloudera.org:8080/#/c/2309/2/fe/src/main/java/com/cloudera/impala/analysis/Analyzer.java File fe/src/main/java/com/cloudera/impala/analysis/Analyzer.java: Line 236: public final Map<ExprId, TableRef> ijClauseByConjunct = Maps.newHashMap(); let's coalesce oj/sj/ijClauseByConjunct into joinClauseByConjunct, the table ref can tell you the rest. Line 1150: if (tids.size() > 1 || isOuterJoined(tids.get(0)) it looks like this would also capture b.x < 15 in a left outer join b on (a.id = b.id and b.x < 15) which isn't necessary (and i'd expect this form to be fairly common) http://gerrit.cloudera.org:8080/#/c/2309/2/testdata/workloads/functional-planner/queries/PlannerTest/outer-joins.test File testdata/workloads/functional-planner/queries/PlannerTest/outer-joins.test: Line 712: # that references an outer joined tuple. i would specifically point out that the predicate doesn't reference the right-hand child -- To view, visit http://gerrit.cloudera.org:8080/2309 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: Iffef7718679d48f866fa90fd3257f182cbb385ae Gerrit-PatchSet: 2 Gerrit-Project: Impala Gerrit-Branch: cdh5-2.5.0_5.7.0 Gerrit-Owner: Alex Behm <[email protected]> Gerrit-Reviewer: Marcel Kornacker <[email protected]> Gerrit-HasComments: Yes
