Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/21516 )
Change subject: IMPALA-13077: Fix selectivity estimation for SEMI JOIN ...................................................................... IMPALA-13077: Fix selectivity estimation for SEMI JOIN JoinNode.getSemiJoinCardinality() will skip an equality expression if either NDV or Cardinality of equality expression is unknown (-1). This patch fix the unknown NDV issue by making JoinNode.getNdv() wraps around ColumnStats.fromExpr(). Testing: - Add test case where LEFT SEMI JOIN from subquery can reduce cardinality estimate of leftmost ScanNode in the query plan. - Add new pattern at CARDINALITY_FILTER to ignore reduction by runtime filter. - Pass core tests. Change-Id: I9c799df535d764c3f87ededef1c48eaa103293a0 Reviewed-on: http://gerrit.cloudera.org:8080/21516 Reviewed-by: Impala Public Jenkins <[email protected]> Tested-by: Impala Public Jenkins <[email protected]> --- M fe/src/main/java/org/apache/impala/planner/JoinNode.java M fe/src/test/java/org/apache/impala/planner/PlannerTest.java M fe/src/test/java/org/apache/impala/testutil/TestUtils.java M testdata/workloads/functional-planner/queries/PlannerTest/implicit-joins.test M testdata/workloads/functional-planner/queries/PlannerTest/tpcds_cpu_cost/tpcds-q59.test 5 files changed, 71 insertions(+), 14 deletions(-) Approvals: Impala Public Jenkins: Looks good to me, approved; Verified -- To view, visit http://gerrit.cloudera.org:8080/21516 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I9c799df535d764c3f87ededef1c48eaa103293a0 Gerrit-Change-Number: 21516 Gerrit-PatchSet: 9 Gerrit-Owner: Riza Suminto <[email protected]> Gerrit-Reviewer: Csaba Ringhofer <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Quanlong Huang <[email protected]> Gerrit-Reviewer: Riza Suminto <[email protected]>
