Internal Jenkins has submitted this change and it was merged. Change subject: IMPALA-2956: Filters should be able to target multiple scan nodes ......................................................................
IMPALA-2956: Filters should be able to target multiple scan nodes With this commit runtime filters can be assigned to multiple destination nodes (scans). For each filter, the destination nodes are determined using equivalent classes during planning. For each filter, all its destination nodes are in the left subtree rooted at the join node that constructs this filter. A runtime filter may have both local and remote targets. The backend determines how to route each filter depending on the number and type (local, remote) of its destination nodes. With this commit, we enable runtime filter propagation in all the operands of UNION [ALL|DISTINCT] nodes. Change-Id: Iad2ce4e579a30616c469312a4e658140d317507b Reviewed-on: http://gerrit.cloudera.org:8080/2932 Reviewed-by: Dimitris Tsirogiannis <[email protected]> Tested-by: Internal Jenkins --- M be/src/exec/hash-join-node.cc M be/src/exec/hdfs-scan-node.cc M be/src/exec/partitioned-hash-join-node.cc M be/src/runtime/coordinator.cc M be/src/runtime/coordinator.h M be/src/runtime/runtime-filter.cc M common/thrift/PlanNodes.thrift M fe/src/main/java/com/cloudera/impala/analysis/Analyzer.java M fe/src/main/java/com/cloudera/impala/planner/DistributedPlanner.java M fe/src/main/java/com/cloudera/impala/planner/HdfsScanNode.java M fe/src/main/java/com/cloudera/impala/planner/PlanNode.java M fe/src/main/java/com/cloudera/impala/planner/RuntimeFilterGenerator.java M testdata/workloads/functional-planner/queries/PlannerTest/data-source-tables.test M testdata/workloads/functional-planner/queries/PlannerTest/hbase.test M testdata/workloads/functional-planner/queries/PlannerTest/inline-view.test M testdata/workloads/functional-planner/queries/PlannerTest/join-order.test M testdata/workloads/functional-planner/queries/PlannerTest/joins.test M testdata/workloads/functional-planner/queries/PlannerTest/kudu-delete.test M testdata/workloads/functional-planner/queries/PlannerTest/kudu-update.test M testdata/workloads/functional-planner/queries/PlannerTest/kudu.test M testdata/workloads/functional-planner/queries/PlannerTest/nested-collections.test M testdata/workloads/functional-planner/queries/PlannerTest/outer-joins.test M testdata/workloads/functional-planner/queries/PlannerTest/predicate-propagation.test M testdata/workloads/functional-planner/queries/PlannerTest/runtime-filter-propagation.test M testdata/workloads/functional-planner/queries/PlannerTest/subquery-rewrite.test M testdata/workloads/functional-planner/queries/PlannerTest/tpcds-all.test M testdata/workloads/functional-planner/queries/PlannerTest/tpch-all.test M testdata/workloads/functional-planner/queries/PlannerTest/tpch-nested.test M testdata/workloads/functional-planner/queries/PlannerTest/union.test M testdata/workloads/functional-planner/queries/PlannerTest/views.test M testdata/workloads/functional-planner/queries/PlannerTest/with-clause.test M testdata/workloads/functional-query/queries/QueryTest/runtime_filters.test M testdata/workloads/functional-query/queries/QueryTest/runtime_row_filters.test 33 files changed, 730 insertions(+), 282 deletions(-) Approvals: Internal Jenkins: Verified Dimitris Tsirogiannis: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/2932 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: Iad2ce4e579a30616c469312a4e658140d317507b Gerrit-PatchSet: 10 Gerrit-Project: Impala Gerrit-Branch: cdh5-trunk Gerrit-Owner: Dimitris Tsirogiannis <[email protected]> Gerrit-Reviewer: Alex Behm <[email protected]> Gerrit-Reviewer: Dimitris Tsirogiannis <[email protected]> Gerrit-Reviewer: Internal Jenkins Gerrit-Reviewer: Marcel Kornacker <[email protected]>
