You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by jo...@apache.org on 2025/09/25 01:22:34 UTC

(impala) branch master updated: IMPALA-14106: Calcite planner: Register equivalent union expressions in value transfer graph

This is an automated email from the ASF dual-hosted git repository.

joemcdonnell pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git


The following commit(s) were added to refs/heads/master by this push:
     new a6dbd4015 IMPALA-14106: Calcite planner: Register equivalent union expressions in value transfer graph
a6dbd4015 is described below

commit a6dbd4015cf2ea8f1d28e672702db3f1e2fa20e5
Author: Steve Carlin <sc...@cloudera.com>
AuthorDate: Tue May 27 16:24:58 2025 -0700

    IMPALA-14106: Calcite planner: Register equivalent union expressions in value transfer graph
    
    This commit registers the equivalent union expressions in the value
    transfer graph when the physical union node is created for the Calcite
    planner.
    
    Change-Id: I4c858ae82a1cb7b89b0ae4e70205d8eeaeb28687
    Reviewed-on: http://gerrit.cloudera.org:8080/23316
    Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
    Tested-by: Impala Public Jenkins <im...@cloudera.com>
---
 .../impala/calcite/rel/node/ImpalaUnionRel.java    |   2 +-
 .../impala/calcite/rel/node/ImpalaValuesRel.java   |   2 +-
 .../impala/calcite/rel/node/NodeCreationUtils.java |  37 +++-
 .../PlannerTest/calcite_tpcds/tpcds-q02.test       |  44 +++--
 .../PlannerTest/calcite_tpcds/tpcds-q05.test       | 102 +++++++---
 .../PlannerTest/calcite_tpcds/tpcds-q10a.test      |  91 ++++-----
 .../PlannerTest/calcite_tpcds/tpcds-q14a.test      | 206 +++++++++++++--------
 .../PlannerTest/calcite_tpcds/tpcds-q14b.test      | 164 +++++++++-------
 .../PlannerTest/calcite_tpcds/tpcds-q54.test       |  49 +++--
 .../PlannerTest/calcite_tpcds/tpcds-q71.test       |  44 +++--
 .../PlannerTest/calcite_tpcds/tpcds-q75.test       | 108 ++++++-----
 11 files changed, 530 insertions(+), 319 deletions(-)

diff --git a/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaUnionRel.java b/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaUnionRel.java
index 9d087c893..3b57025e1 100644
--- a/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaUnionRel.java
+++ b/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaUnionRel.java
@@ -61,7 +61,7 @@ public class ImpalaUnionRel extends Union
     List<NodeWithExprs> nodeWithExprsList = getChildrenPlanNodes(getInputs(), context);
 
     NodeWithExprs retNode = NodeCreationUtils.createUnionPlanNode(nodeId,
-        context.ctx_.getRootAnalyzer(), rowType, nodeWithExprsList);
+        context.ctx_.getRootAnalyzer(), rowType, nodeWithExprsList, this.all);
 
     // If there is a filter condition, a SelectNode will get added on top
     // of the retNode.
diff --git a/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaValuesRel.java b/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaValuesRel.java
index ba9159b96..9f2640ac7 100644
--- a/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaValuesRel.java
+++ b/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaValuesRel.java
@@ -75,7 +75,7 @@ public class ImpalaValuesRel extends Values
     List<NodeWithExprs> nodeWithExprsList = getValuesExprs(context);
 
     NodeWithExprs retNode = NodeCreationUtils.createUnionPlanNode(nodeId,
-        context.ctx_.getRootAnalyzer(), rowType, nodeWithExprsList);
+        context.ctx_.getRootAnalyzer(), rowType, nodeWithExprsList, false);
 
     // If there is a filter condition, a SelectNode will get added on top
     // of the retNode.
diff --git a/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/NodeCreationUtils.java b/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/NodeCreationUtils.java
index f82428d9b..7c46880ec 100644
--- a/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/NodeCreationUtils.java
+++ b/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/NodeCreationUtils.java
@@ -74,14 +74,18 @@ public class NodeCreationUtils {
   }
 
   public static NodeWithExprs createUnionPlanNode(PlanNodeId nodeId,
-      Analyzer analyzer, RelDataType rowType, List<NodeWithExprs> childrenPlanNodes
-      ) throws ImpalaException {
+      Analyzer analyzer, RelDataType rowType, List<NodeWithExprs> childrenPlanNodes,
+      boolean unionAll) throws ImpalaException {
     TupleDescriptorFactory tupleDescFactory =
         new TupleDescriptorFactory("union", rowType);
     TupleDescriptor tupleDesc = tupleDescFactory.create(analyzer);
     // The outputexprs are the SlotRef exprs passed to the parent node.
     List<Expr> outputExprs = createOutputExprs(tupleDesc.getSlots());
 
+    if (unionAll) {
+      registerUnionValueTransfers(analyzer, outputExprs, childrenPlanNodes);
+    }
+
     UnionNode unionNode = new ImpalaUnionNode(nodeId, tupleDesc.getId(), outputExprs,
         childrenPlanNodes);
 
@@ -112,4 +116,33 @@ public class NodeCreationUtils {
           context.ctx_.getNextNodeId(), rexBuilder)
       : planNode;
   }
+
+  /**
+   * Register the union value transfers which allows runtime filter generators
+   * to be applied to equivalent values under union nodes.
+   *
+   * The output expression node of the Union is treated as equivalent to all
+   * the children nodes. The equivalent call within the original Impala planner
+   * that registers the value transfer is located in SetOperationStmt.createMetadata
+   */
+  private static void registerUnionValueTransfers(Analyzer analyzer,
+      List<Expr> outputExprs, List<NodeWithExprs> childrenPlanNodes) {
+    for (NodeWithExprs nodeWithExprs : childrenPlanNodes) {
+      Preconditions.checkState(outputExprs.size() == nodeWithExprs.outputExprs_.size());
+    }
+
+    for (int i = 0; i < outputExprs.size(); ++i) {
+      SlotRef unionExpr = outputExprs.get(i).unwrapSlotRef(false);
+      if (unionExpr == null) {
+        continue;
+      }
+      for (NodeWithExprs nodeWithExprs : childrenPlanNodes) {
+        SlotRef inputExpr = nodeWithExprs.outputExprs_.get(i).unwrapSlotRef(false);
+        if (inputExpr == null) {
+          continue;
+        }
+        analyzer.registerValueTransfer(unionExpr.getSlotId(), inputExpr.getSlotId());
+      }
+    }
+  }
 }
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q02.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q02.test
index cbdec6ba0..88a3cd3e7 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q02.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q02.test
@@ -60,10 +60,10 @@ with wscs as
 
 # end query 2 in stream 0 using template query2.tpl
 ---- PLAN
-Max Per-Host Resource Reservation: Memory=24.62MB Threads=1
-Per-Host Resource Estimates: Memory=112MB
+Max Per-Host Resource Reservation: Memory=26.62MB Threads=1
+Per-Host Resource Estimates: Memory=114MB
 F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
-|  Per-Instance Resources: mem-estimate=112.38MB mem-reservation=24.62MB thread-reservation=1 runtime-filters-memory=3.00MB
+|  Per-Instance Resources: mem-estimate=114.38MB mem-reservation=26.62MB thread-reservation=1 runtime-filters-memory=5.00MB
 |  max-parallelism=1 segment-costs=[8530838007, 8530838007, 58178, 20480]
 PLAN-ROOT SINK
 |  output exprs: tpcds_partitioned_parquet_snap.date_dim_1.d_week_seq, round(divide(sum(CASE WHEN tpcds_partitioned_parquet_snap.date_dim_1.d_day_name = 'Sunday' THEN SALES_PRICE ELSE NULL END), sum(CASE WHEN tpcds_partitioned_parquet_snap.date_dim.d_day_name = 'Sunday' THEN SALES_PRICE ELSE NULL END)), CAST(2 AS TINYINT)), round(divide(sum(CASE WHEN tpcds_partitioned_parquet_snap.date_dim_1.d_day_name = 'Monday' THEN SALES_PRICE ELSE NULL END), sum(CASE WHEN tpcds_partitioned_parquet_sn [...]
@@ -114,6 +114,7 @@ PLAN-ROOT SINK
 |  12:HASH JOIN [INNER JOIN]
 |  |  hash predicates: SOLD_DATE_SK = tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  |  tuple-ids=14,15 row-size=35B cardinality=6.48G cost=2836389159
 |  |  in pipelines: 09(GETNEXT), 10(GETNEXT), 11(OPEN)
@@ -136,6 +137,7 @@ PLAN-ROOT SINK
 |  |
 |  |--10:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|  |     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
 |  |     stored statistics:
 |  |       table: rows=4.32G size=280.96GB
 |  |       partitions: 1831/1831 rows=4.32G
@@ -147,6 +149,7 @@ PLAN-ROOT SINK
 |  |
 |  09:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -188,6 +191,7 @@ PLAN-ROOT SINK
 04:HASH JOIN [INNER JOIN]
 |  hash predicates: SOLD_DATE_SK = tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  fk/pk conjuncts: assumed fk/pk
+|  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  tuple-ids=4,5 row-size=35B cardinality=6.48G cost=2836389159
 |  in pipelines: 01(GETNEXT), 02(GETNEXT), 03(OPEN)
@@ -210,6 +214,7 @@ PLAN-ROOT SINK
 |
 |--02:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -221,6 +226,7 @@ PLAN-ROOT SINK
 |
 01:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
+   runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
@@ -230,8 +236,8 @@ PLAN-ROOT SINK
    tuple-ids=0 row-size=8B cardinality=2.16G cost=248828309
    in pipelines: 01(GETNEXT)
 ---- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=238.19MB Threads=37
-Per-Host Resource Estimates: Memory=1015MB
+Max Per-Host Resource Reservation: Memory=242.19MB Threads=37
+Per-Host Resource Estimates: Memory=1019MB
 F13:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=6.32MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[22294] cpu-comparison-result=262 [max(1 (self) vs 262 (sum children))]
@@ -330,6 +336,7 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |  in pipelines: 09(GETNEXT), 10(GETNEXT)
 |  |
 |  F08:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=30.69MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=120 [max(120 (self) vs 11 (sum children))]
 |  13:AGGREGATE [STREAMING]
@@ -348,11 +355,12 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |  in pipelines: 09(GETNEXT), 10(GETNEXT), 11(OPEN)
 |  |
 |  |--F16:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=58.92MB mem-reservation=57.00MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=59.92MB mem-reservation=58.00MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[170129]
 |  |  JOIN BUILD
 |  |  |  join-table-id=02 plan-id=03 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=73049
 |  |  |
 |  |  22:EXCHANGE [BROADCAST]
@@ -382,6 +390,7 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |
 |  |--10:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|  |     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
 |  |     stored statistics:
 |  |       table: rows=4.32G size=280.96GB
 |  |       partitions: 1831/1831 rows=4.32G
@@ -393,6 +402,7 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |
 |  09:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -463,6 +473,7 @@ max-parallelism=10 segment-costs=[1760943, 26273] cpu-comparison-result=131 [max
 |  in pipelines: 01(GETNEXT), 02(GETNEXT)
 |
 F02:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 Per-Instance Resources: mem-estimate=30.69MB mem-reservation=4.00MB thread-reservation=1
 max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=120 [max(120 (self) vs 11 (sum children))]
 05:AGGREGATE [STREAMING]
@@ -481,11 +492,12 @@ max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=1
 |  in pipelines: 01(GETNEXT), 02(GETNEXT), 03(OPEN)
 |
 |--F18:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=58.92MB mem-reservation=57.00MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=59.92MB mem-reservation=58.00MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[170129]
 |  JOIN BUILD
 |  |  join-table-id=04 plan-id=05 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=73049
 |  |
 |  18:EXCHANGE [BROADCAST]
@@ -515,6 +527,7 @@ max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=1
 |
 |--02:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -526,6 +539,7 @@ max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=1
 |
 01:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
+   runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
@@ -535,8 +549,8 @@ max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=1
    tuple-ids=0 row-size=8B cardinality=2.16G cost=248828309
    in pipelines: 01(GETNEXT)
 ---- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=238.19MB Threads=37
-Per-Host Resource Estimates: Memory=1015MB
+Max Per-Host Resource Reservation: Memory=242.19MB Threads=37
+Per-Host Resource Estimates: Memory=1019MB
 F13:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=6.32MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[22294] cpu-comparison-result=262 [max(1 (self) vs 262 (sum children))]
@@ -635,6 +649,7 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |  in pipelines: 09(GETNEXT), 10(GETNEXT)
 |  |
 |  F08:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=30.69MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=120 [max(120 (self) vs 11 (sum children))]
 |  13:AGGREGATE [STREAMING]
@@ -653,11 +668,12 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |  in pipelines: 09(GETNEXT), 10(GETNEXT), 11(OPEN)
 |  |
 |  |--F16:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=58.92MB mem-reservation=57.00MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=59.92MB mem-reservation=58.00MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[170129]
 |  |  JOIN BUILD
 |  |  |  join-table-id=02 plan-id=03 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=73049
 |  |  |
 |  |  22:EXCHANGE [BROADCAST]
@@ -687,6 +703,7 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |
 |  |--10:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|  |     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
 |  |     stored statistics:
 |  |       table: rows=4.32G size=280.96GB
 |  |       partitions: 1831/1831 rows=4.32G
@@ -698,6 +715,7 @@ max-parallelism=10 segment-costs=[29390, 16097] cpu-comparison-result=262 [max(1
 |  |
 |  09:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -768,6 +786,7 @@ max-parallelism=10 segment-costs=[1760943, 26273] cpu-comparison-result=131 [max
 |  in pipelines: 01(GETNEXT), 02(GETNEXT)
 |
 F02:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 Per-Instance Resources: mem-estimate=30.69MB mem-reservation=4.00MB thread-reservation=1
 max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=120 [max(120 (self) vs 11 (sum children))]
 05:AGGREGATE [STREAMING]
@@ -786,11 +805,12 @@ max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=1
 |  in pipelines: 01(GETNEXT), 02(GETNEXT), 03(OPEN)
 |
 |--F18:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=58.92MB mem-reservation=57.00MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=59.92MB mem-reservation=58.00MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[170129]
 |  JOIN BUILD
 |  |  join-table-id=04 plan-id=05 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=73049
 |  |
 |  18:EXCHANGE [BROADCAST]
@@ -820,6 +840,7 @@ max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=1
 |
 |--02:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -831,6 +852,7 @@ max-parallelism=120 segment-costs=[8534050783, 10197930] cpu-comparison-result=1
 |
 01:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
+   runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q05.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q05.test
index 3dd2f49f6..afde2702f 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q05.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q05.test
@@ -128,10 +128,10 @@ with ssr as
 
 # end query 5 in stream 0 using template query5.tpl
 ---- PLAN
-Max Per-Host Resource Reservation: Memory=111.12MB Threads=1
-Per-Host Resource Estimates: Memory=11.16GB
+Max Per-Host Resource Reservation: Memory=133.12MB Threads=1
+Per-Host Resource Estimates: Memory=11.18GB
 F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
-|  Per-Instance Resources: mem-estimate=11.16GB mem-reservation=111.12MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  Per-Instance Resources: mem-estimate=11.18GB mem-reservation=133.12MB thread-reservation=1 runtime-filters-memory=23.00MB
 |  max-parallelism=1 segment-costs=[16252493382, 8126622616, 7582950483, 508568, 443665, 669120, 500]
 PLAN-ROOT SINK
 |  output exprs: CASE valid_tid(34,35,36) WHEN 34 THEN CHANNEL WHEN 35 THEN CHANNEL WHEN 36 THEN NULL END, CASE valid_tid(34,35,36) WHEN 34 THEN ID WHEN 35 THEN NULL WHEN 36 THEN NULL END, aggif(valid_tid(34,35,36) IN (34, 35, 36), CASE valid_tid(34,35,36) WHEN 34 THEN sum(SALES) WHEN 35 THEN sum(SALES) WHEN 36 THEN sum(SALES) END), aggif(valid_tid(34,35,36) IN (34, 35, 36), CASE valid_tid(34,35,36) WHEN 34 THEN sum(returns) WHEN 35 THEN sum(returns) WHEN 36 THEN sum(returns) END), aggif [...]
@@ -180,6 +180,7 @@ PLAN-ROOT SINK
 |  26:HASH JOIN [INNER JOIN]
 |  |  hash predicates: WSR_WEB_SITE_SK = tpcds_partitioned_parquet_snap.web_site.web_site_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.web_site.web_site_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.web_site.web_site_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=27,28,30 row-size=64B cardinality=3.69G cost=1616607638
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT), 25(OPEN)
@@ -197,6 +198,7 @@ PLAN-ROOT SINK
 |  24:HASH JOIN [INNER JOIN]
 |  |  hash predicates: DATE_SK = tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=27,28 row-size=32B cardinality=3.69G cost=1616614877
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT), 23(OPEN)
@@ -222,13 +224,14 @@ PLAN-ROOT SINK
 |  |--22:HASH JOIN [RIGHT OUTER JOIN]
 |  |  |  hash predicates: tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk = tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number = tpcds_partitioned_parquet_snap.web_returns.wr_order_number
 |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk = tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number = tpcds_partitioned_parquet_snap.web_returns.wr_order_number
-|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF014[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF015[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number
+|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF013[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number, RF014[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF015[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number
 |  |  |  mem-estimate=10.83GB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  tuple-ids=23N,25 row-size=40B cardinality=1.53G cost=1047895000
 |  |  |  in pipelines: 20(GETNEXT), 21(OPEN)
 |  |  |
 |  |  |--21:SCAN HDFS [tpcds_partitioned_parquet_snap.web_returns]
 |  |  |     HDFS partitions=2114/2114 files=2114 size=16.74GB
+|  |  |     runtime filters: RF010[bloom] -> tpcds_partitioned_parquet_snap.web_returns.wr_returned_date_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=216.00M size=16.74GB
 |  |  |       partitions: 2114/2114 rows=216.00M
@@ -240,7 +243,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  20:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|  |     runtime filters: RF014[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF015[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF012[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
+|  |     runtime filters: RF014[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF015[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_web_site_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF013[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_web_site_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -252,6 +255,7 @@ PLAN-ROOT SINK
 |  |
 |  19:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_web_site_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_web_site_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -276,6 +280,7 @@ PLAN-ROOT SINK
 |  16:HASH JOIN [INNER JOIN]
 |  |  hash predicates: PAGE_SK = tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk
 |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  tuple-ids=14,15,17 row-size=64B cardinality=4.75G cost=2080027968
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT), 15(OPEN)
@@ -293,6 +298,7 @@ PLAN-ROOT SINK
 |  14:HASH JOIN [INNER JOIN]
 |  |  hash predicates: DATE_SK = tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=14,15 row-size=32B cardinality=4.75G cost=2079999273
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT), 13(OPEN)
@@ -317,6 +323,7 @@ PLAN-ROOT SINK
 |  |
 |  |--12:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_returns]
 |  |     HDFS partitions=2060/2060 files=2060 size=32.77GB
+|  |     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_catalog_page_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_catalog_page_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_returned_date_sk
 |  |     stored statistics:
 |  |       table: rows=432.02M size=32.77GB
 |  |       partitions: 2060/2060 rows=432.02M
@@ -328,6 +335,7 @@ PLAN-ROOT SINK
 |  |
 |  11:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_catalog_page_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_catalog_page_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -347,6 +355,7 @@ PLAN-ROOT SINK
 08:HASH JOIN [INNER JOIN]
 |  hash predicates: STORE_SK = tpcds_partitioned_parquet_snap.store.s_store_sk
 |  fk/pk conjuncts: assumed fk/pk
+|  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.store.s_store_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.store.s_store_sk
 |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  tuple-ids=4,5,7 row-size=64B cardinality=9.50G cost=4159868808
 |  in pipelines: 03(GETNEXT), 04(GETNEXT), 07(OPEN)
@@ -364,6 +373,7 @@ PLAN-ROOT SINK
 06:HASH JOIN [INNER JOIN]
 |  hash predicates: DATE_SK = tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  fk/pk conjuncts: assumed fk/pk
+|  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  tuple-ids=4,5 row-size=32B cardinality=9.50G cost=4159874763
 |  in pipelines: 03(GETNEXT), 04(GETNEXT), 05(OPEN)
@@ -388,6 +398,7 @@ PLAN-ROOT SINK
 |
 |--04:SCAN HDFS [tpcds_partitioned_parquet_snap.store_returns]
 |     HDFS partitions=2004/2004 files=2004 size=48.14GB
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_returns.sr_store_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_returns.sr_store_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_returns.sr_returned_date_sk
 |     stored statistics:
 |       table: rows=863.99M size=48.14GB
 |       partitions: 2004/2004 rows=863.99M
@@ -399,6 +410,7 @@ PLAN-ROOT SINK
 |
 03:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_store_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_store_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -408,8 +420,8 @@ PLAN-ROOT SINK
    tuple-ids=0 row-size=16B cardinality=8.64G cost=1990641068
    in pipelines: 03(GETNEXT)
 ---- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=1.76GB Threads=92
-Per-Host Resource Estimates: Memory=8.42GB
+Max Per-Host Resource Reservation: Memory=1.98GB Threads=92
+Per-Host Resource Estimates: Memory=8.63GB
 F23:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.07MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[539] cpu-comparison-result=480 [max(1 (self) vs 480 (sum children))]
@@ -495,6 +507,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT)
 |  |
 |  F17:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
 |  Per-Instance Resources: mem-estimate=71.00MB mem-reservation=2.12MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[7193577061, 25502] cpu-comparison-result=240 [max(240 (self) vs 202 (sum children))]
 |  27:AGGREGATE [STREAMING]
@@ -513,11 +526,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT), 25(OPEN)
 |  |
 |  |--F28:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.27MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.27MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[146]
 |  |  JOIN BUILD
 |  |  |  join-table-id=04 plan-id=05 cohort-id=03
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.web_site.web_site_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.web_site.web_site_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.web_site.web_site_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=66
 |  |  |
 |  |  42:EXCHANGE [BROADCAST]
@@ -547,11 +561,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT), 23(OPEN)
 |  |
 |  |--F29:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.32MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.32MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[17005]
 |  |  JOIN BUILD
 |  |  |  join-table-id=05 plan-id=06 cohort-id=03
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
+|  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=7305
 |  |  |
 |  |  41:EXCHANGE [BROADCAST]
@@ -589,12 +604,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  |  in pipelines: 20(GETNEXT), 21(OPEN)
 |  |  |
 |  |  |--F30:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  |  Per-Instance Resources: mem-estimate=105.04MB mem-reservation=35.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  Per-Instance Resources: mem-estimate=121.04MB mem-reservation=51.00MB thread-reservation=1 runtime-filters-memory=17.00MB
 |  |  |  |  max-parallelism=120 segment-costs=[263847280]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=06 plan-id=07 cohort-id=03
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, tpcds_partitioned_parquet_snap.web_returns.wr_order_number
-|  |  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF014[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF015[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number
+|  |  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF013[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number, RF014[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF015[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number
 |  |  |  |  mem-estimate=92.40MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0 cost=216002686
 |  |  |  |
 |  |  |  40:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.web_returns.wr_item_sk,tpcds_partitioned_parquet_snap.web_returns.wr_order_number)]
@@ -603,10 +618,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  |  |  in pipelines: 21(GETNEXT)
 |  |  |  |
 |  |  |  F15:PLAN FRAGMENT [RANDOM] hosts=10 instances=60 (adjusted from 120)
+|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=29.12MB mem-reservation=256.00KB thread-reservation=1
 |  |  |  max-parallelism=60 segment-costs=[519788863]
 |  |  |  21:SCAN HDFS [tpcds_partitioned_parquet_snap.web_returns, RANDOM]
 |  |  |     HDFS partitions=2114/2114 files=2114 size=16.74GB
+|  |  |     runtime filters: RF010[bloom] -> tpcds_partitioned_parquet_snap.web_returns.wr_returned_date_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=216.00M size=16.74GB
 |  |  |       partitions: 2114/2114 rows=216.00M
@@ -622,12 +639,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  |  in pipelines: 20(GETNEXT)
 |  |  |
 |  |  F14:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
+|  |  Per-Host Shared Resources: mem-estimate=18.00MB mem-reservation=18.00MB thread-reservation=0 runtime-filters-memory=18.00MB
 |  |  Per-Instance Resources: mem-estimate=25.38MB mem-reservation=128.00KB thread-reservation=1
 |  |  max-parallelism=390 segment-costs=[3836103108]
 |  |  20:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|  |     runtime filters: RF014[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF015[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF012[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
+|  |     runtime filters: RF014[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF015[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_web_site_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF013[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_web_site_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -639,6 +656,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |
 |  19:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_web_site_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_web_site_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -666,6 +684,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT)
 |  |
 |  F08:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
 |  Per-Instance Resources: mem-estimate=71.00MB mem-reservation=6.00MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[8137725668, 27820800] cpu-comparison-result=120 [max(120 (self) vs 22 (sum children))]
 |  17:AGGREGATE [STREAMING]
@@ -684,11 +703,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT), 15(OPEN)
 |  |
 |  |--F26:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=35.63MB mem-reservation=34.50MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=36.63MB mem-reservation=35.50MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[83840]
 |  |  JOIN BUILD
 |  |  |  join-table-id=02 plan-id=03 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk
+|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk
 |  |  |  mem-estimate=34.50MB mem-reservation=34.50MB spill-buffer=128.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  36:EXCHANGE [BROADCAST]
@@ -718,11 +738,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT), 13(OPEN)
 |  |
 |  |--F27:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.32MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.32MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[17005]
 |  |  JOIN BUILD
 |  |  |  join-table-id=03 plan-id=04 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=7305
 |  |  |
 |  |  35:EXCHANGE [BROADCAST]
@@ -753,6 +774,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |
 |  |--12:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_returns, RANDOM]
 |  |     HDFS partitions=2060/2060 files=2060 size=32.77GB
+|  |     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_catalog_page_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_catalog_page_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_returned_date_sk
 |  |     stored statistics:
 |  |       table: rows=432.02M size=32.77GB
 |  |       partitions: 2060/2060 rows=432.02M
@@ -764,6 +786,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |
 |  11:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_catalog_page_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_catalog_page_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -786,6 +809,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  in pipelines: 03(GETNEXT), 04(GETNEXT)
 |
 F02:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
 Per-Instance Resources: mem-estimate=71.00MB mem-reservation=10.00MB thread-reservation=1
 max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=120 [max(120 (self) vs 22 (sum children))]
 09:AGGREGATE [STREAMING]
@@ -804,11 +828,12 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |  in pipelines: 03(GETNEXT), 04(GETNEXT), 07(OPEN)
 |
 |--F24:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=23.33MB mem-reservation=23.25MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=24.33MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[3140]
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.store.s_store_sk
+|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.store.s_store_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.store.s_store_sk
 |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=1350
 |  |
 |  32:EXCHANGE [BROADCAST]
@@ -838,11 +863,12 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |  in pipelines: 03(GETNEXT), 04(GETNEXT), 05(OPEN)
 |
 |--F25:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=23.32MB mem-reservation=23.25MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=24.32MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[17005]
 |  JOIN BUILD
 |  |  join-table-id=01 plan-id=02 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=7305
 |  |
 |  31:EXCHANGE [BROADCAST]
@@ -873,6 +899,7 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |
 |--04:SCAN HDFS [tpcds_partitioned_parquet_snap.store_returns, RANDOM]
 |     HDFS partitions=2004/2004 files=2004 size=48.14GB
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_returns.sr_store_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_returns.sr_store_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_returns.sr_returned_date_sk
 |     stored statistics:
 |       table: rows=863.99M size=48.14GB
 |       partitions: 2004/2004 rows=863.99M
@@ -884,6 +911,7 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |
 03:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_store_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_store_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -893,8 +921,8 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
    tuple-ids=0 row-size=16B cardinality=8.64G cost=1990641068
    in pipelines: 03(GETNEXT)
 ---- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=1.76GB Threads=92
-Per-Host Resource Estimates: Memory=8.42GB
+Max Per-Host Resource Reservation: Memory=1.98GB Threads=92
+Per-Host Resource Estimates: Memory=8.63GB
 F23:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.07MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[539] cpu-comparison-result=480 [max(1 (self) vs 480 (sum children))]
@@ -980,6 +1008,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT)
 |  |
 |  F17:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
 |  Per-Instance Resources: mem-estimate=71.00MB mem-reservation=2.12MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[7193577061, 25502] cpu-comparison-result=240 [max(240 (self) vs 202 (sum children))]
 |  27:AGGREGATE [STREAMING]
@@ -998,11 +1027,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT), 25(OPEN)
 |  |
 |  |--F28:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.27MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.27MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[146]
 |  |  JOIN BUILD
 |  |  |  join-table-id=04 plan-id=05 cohort-id=03
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.web_site.web_site_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.web_site.web_site_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.web_site.web_site_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=66
 |  |  |
 |  |  42:EXCHANGE [BROADCAST]
@@ -1032,11 +1062,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 19(GETNEXT), 20(GETNEXT), 23(OPEN)
 |  |
 |  |--F29:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.32MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.32MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[17005]
 |  |  JOIN BUILD
 |  |  |  join-table-id=05 plan-id=06 cohort-id=03
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
+|  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=7305
 |  |  |
 |  |  41:EXCHANGE [BROADCAST]
@@ -1074,12 +1105,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  |  in pipelines: 20(GETNEXT), 21(OPEN)
 |  |  |
 |  |  |--F30:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  |  Per-Instance Resources: mem-estimate=105.04MB mem-reservation=35.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  Per-Instance Resources: mem-estimate=121.04MB mem-reservation=51.00MB thread-reservation=1 runtime-filters-memory=17.00MB
 |  |  |  |  max-parallelism=120 segment-costs=[263847280]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=06 plan-id=07 cohort-id=03
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, tpcds_partitioned_parquet_snap.web_returns.wr_order_number
-|  |  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF014[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF015[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number
+|  |  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF013[bloom] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number, RF014[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_item_sk, RF015[min_max] <- tpcds_partitioned_parquet_snap.web_returns.wr_order_number
 |  |  |  |  mem-estimate=92.40MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0 cost=216002686
 |  |  |  |
 |  |  |  40:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.web_returns.wr_item_sk,tpcds_partitioned_parquet_snap.web_returns.wr_order_number)]
@@ -1088,10 +1119,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  |  |  in pipelines: 21(GETNEXT)
 |  |  |  |
 |  |  |  F15:PLAN FRAGMENT [RANDOM] hosts=10 instances=60 (adjusted from 120)
+|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=29.12MB mem-reservation=256.00KB thread-reservation=1
 |  |  |  max-parallelism=60 segment-costs=[519788863]
 |  |  |  21:SCAN HDFS [tpcds_partitioned_parquet_snap.web_returns, RANDOM]
 |  |  |     HDFS partitions=2114/2114 files=2114 size=16.74GB
+|  |  |     runtime filters: RF010[bloom] -> tpcds_partitioned_parquet_snap.web_returns.wr_returned_date_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=216.00M size=16.74GB
 |  |  |       partitions: 2114/2114 rows=216.00M
@@ -1107,12 +1140,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  |  in pipelines: 20(GETNEXT)
 |  |  |
 |  |  F14:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
+|  |  Per-Host Shared Resources: mem-estimate=18.00MB mem-reservation=18.00MB thread-reservation=0 runtime-filters-memory=18.00MB
 |  |  Per-Instance Resources: mem-estimate=25.38MB mem-reservation=128.00KB thread-reservation=1
 |  |  max-parallelism=390 segment-costs=[3836103108]
 |  |  20:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|  |     runtime filters: RF014[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF015[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF012[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
+|  |     runtime filters: RF014[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF015[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_web_site_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF013[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_order_number, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_web_site_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -1124,6 +1157,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |
 |  19:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_web_site_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_web_site_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -1151,6 +1185,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT)
 |  |
 |  F08:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
 |  Per-Instance Resources: mem-estimate=71.00MB mem-reservation=6.00MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[8137725668, 27820800] cpu-comparison-result=120 [max(120 (self) vs 22 (sum children))]
 |  17:AGGREGATE [STREAMING]
@@ -1169,11 +1204,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT), 15(OPEN)
 |  |
 |  |--F26:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=35.63MB mem-reservation=34.50MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=36.63MB mem-reservation=35.50MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[83840]
 |  |  JOIN BUILD
 |  |  |  join-table-id=02 plan-id=03 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk
+|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.catalog_page.cp_catalog_page_sk
 |  |  |  mem-estimate=34.50MB mem-reservation=34.50MB spill-buffer=128.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  36:EXCHANGE [BROADCAST]
@@ -1203,11 +1239,12 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |  in pipelines: 11(GETNEXT), 12(GETNEXT), 13(OPEN)
 |  |
 |  |--F27:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.32MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.32MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[17005]
 |  |  JOIN BUILD
 |  |  |  join-table-id=03 plan-id=04 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=7305
 |  |  |
 |  |  35:EXCHANGE [BROADCAST]
@@ -1238,6 +1275,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |
 |  |--12:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_returns, RANDOM]
 |  |     HDFS partitions=2060/2060 files=2060 size=32.77GB
+|  |     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_catalog_page_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_catalog_page_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_returns.cr_returned_date_sk
 |  |     stored statistics:
 |  |       table: rows=432.02M size=32.77GB
 |  |       partitions: 2060/2060 rows=432.02M
@@ -1249,6 +1287,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  |
 |  11:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_catalog_page_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_catalog_page_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -1271,6 +1310,7 @@ max-parallelism=120 segment-costs=[86121, 4572835, 4190, 509107, 1136665] cpu-co
 |  in pipelines: 03(GETNEXT), 04(GETNEXT)
 |
 F02:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
 Per-Instance Resources: mem-estimate=71.00MB mem-reservation=10.00MB thread-reservation=1
 max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=120 [max(120 (self) vs 22 (sum children))]
 09:AGGREGATE [STREAMING]
@@ -1289,11 +1329,12 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |  in pipelines: 03(GETNEXT), 04(GETNEXT), 07(OPEN)
 |
 |--F24:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=23.33MB mem-reservation=23.25MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=24.33MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[3140]
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.store.s_store_sk
+|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.store.s_store_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.store.s_store_sk
 |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=1350
 |  |
 |  32:EXCHANGE [BROADCAST]
@@ -1323,11 +1364,12 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |  in pipelines: 03(GETNEXT), 04(GETNEXT), 05(OPEN)
 |
 |--F25:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=23.32MB mem-reservation=23.25MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=24.32MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[17005]
 |  JOIN BUILD
 |  |  join-table-id=01 plan-id=02 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=7305
 |  |
 |  31:EXCHANGE [BROADCAST]
@@ -1358,6 +1400,7 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |
 |--04:SCAN HDFS [tpcds_partitioned_parquet_snap.store_returns, RANDOM]
 |     HDFS partitions=2004/2004 files=2004 size=48.14GB
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_returns.sr_store_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_returns.sr_store_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_returns.sr_returned_date_sk
 |     stored statistics:
 |       table: rows=863.99M size=48.14GB
 |       partitions: 2004/2004 rows=863.99M
@@ -1369,6 +1412,7 @@ max-parallelism=120 segment-costs=[16252682173, 523958] cpu-comparison-result=12
 |
 03:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_store_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_store_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q10a.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q10a.test
index 7998b334d..80171fce1 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q10a.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q10a.test
@@ -60,10 +60,10 @@ limit 100
 
 # end query 10 in stream 0 using template query10a.tpl
 ---- PLAN
-Max Per-Host Resource Reservation: Memory=22.69MB Threads=1
-Per-Host Resource Estimates: Memory=125MB
+Max Per-Host Resource Reservation: Memory=23.69MB Threads=1
+Per-Host Resource Estimates: Memory=126MB
 F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
-|  Per-Instance Resources: mem-estimate=124.75MB mem-reservation=22.69MB thread-reservation=1 runtime-filters-memory=6.00MB
+|  Per-Instance Resources: mem-estimate=125.75MB mem-reservation=23.69MB thread-reservation=1 runtime-filters-memory=7.00MB
 |  max-parallelism=1 segment-costs=[221054061, 66283, 1400]
 PLAN-ROOT SINK
 |  output exprs: tpcds_partitioned_parquet_snap.customer_demographics.cd_gender, tpcds_partitioned_parquet_snap.customer_demographics.cd_marital_status, tpcds_partitioned_parquet_snap.customer_demographics.cd_education_status, count(), tpcds_partitioned_parquet_snap.customer_demographics.cd_purchase_estimate, count(), tpcds_partitioned_parquet_snap.customer_demographics.cd_credit_rating, count(), tpcds_partitioned_parquet_snap.customer_demographics.cd_dep_count, count(), tpcds_partitione [...]
@@ -84,13 +84,14 @@ PLAN-ROOT SINK
 |
 16:HASH JOIN [RIGHT SEMI JOIN]
 |  hash predicates: CUSTOMER_SK = tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  tuple-ids=0,2,4 row-size=129B cardinality=8.96K cost=10735997
 |  in pipelines: 10(GETNEXT), 13(GETNEXT), 05(OPEN)
 |
 |--08:HASH JOIN [RIGHT SEMI JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk = tpcds_partitioned_parquet_snap.customer.c_customer_sk
-|  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF007[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  tuple-ids=0,2,4 row-size=129B cardinality=8.96K cost=14347470
 |  |  in pipelines: 05(GETNEXT), 00(OPEN)
@@ -98,7 +99,7 @@ PLAN-ROOT SINK
 |  |--04:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk = tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
 |  |  |  fk/pk conjuncts: none
-|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
+|  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  |  tuple-ids=0,2,4 row-size=129B cardinality=8.96K cost=12874
 |  |  |  in pipelines: 00(GETNEXT), 01(OPEN)
@@ -106,7 +107,7 @@ PLAN-ROOT SINK
 |  |  |--03:HASH JOIN [INNER JOIN]
 |  |  |  |  hash predicates: tpcds_partitioned_parquet_snap.customer.c_current_addr_sk = tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
 |  |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.customer.c_current_addr_sk = tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
-|  |  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
+|  |  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
 |  |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  |  |  tuple-ids=2,4 row-size=42B cardinality=8.96K cost=64414
 |  |  |  |  in pipelines: 01(GETNEXT), 02(OPEN)
@@ -126,7 +127,7 @@ PLAN-ROOT SINK
 |  |  |  01:SCAN HDFS [tpcds_partitioned_parquet_snap.customer]
 |  |  |     HDFS partitions=1/1 files=1 size=1.55GB
 |  |  |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.customer.c_customer_sk)
-|  |  |     runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk
+|  |  |     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=30.00M size=1.55GB
 |  |  |       columns: all
@@ -138,7 +139,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  00:SCAN HDFS [tpcds_partitioned_parquet_snap.customer_demographics]
 |  |     HDFS partitions=1/1 files=1 size=11.15MB
-|  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk
+|  |     runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk
 |  |     stored statistics:
 |  |       table: rows=1.92M size=11.15MB
 |  |       columns: all
@@ -150,7 +151,7 @@ PLAN-ROOT SINK
 |  07:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim.d_date_sk
-|  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=6,8 row-size=20B cardinality=55.89M cost=24465060
 |  |  in pipelines: 05(GETNEXT), 06(OPEN)
@@ -171,7 +172,7 @@ PLAN-ROOT SINK
 |  05:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
 |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk)
-|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -190,7 +191,7 @@ PLAN-ROOT SINK
 |--15:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
-|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
+|  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=14,16 row-size=20B cardinality=27.84M cost=12186135
 |  |  in pipelines: 13(GETNEXT), 14(OPEN)
@@ -211,7 +212,7 @@ PLAN-ROOT SINK
 |  13:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
 |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk)
-|     runtime filters: RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -225,7 +226,7 @@ PLAN-ROOT SINK
 12:HASH JOIN [INNER JOIN]
 |  hash predicates: tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
-|  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  tuple-ids=10,12 row-size=20B cardinality=13.97M cost=6116308
 |  in pipelines: 10(GETNEXT), 11(OPEN)
@@ -246,7 +247,7 @@ PLAN-ROOT SINK
 10:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
    predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk)
-   runtime filters: RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
@@ -257,8 +258,8 @@ PLAN-ROOT SINK
    tuple-ids=10 row-size=8B cardinality=13.97M(filtered from 216.00M) cost=20023992
    in pipelines: 10(GETNEXT)
 ---- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=59.81MB Threads=21
-Per-Host Resource Estimates: Memory=274MB
+Max Per-Host Resource Reservation: Memory=61.81MB Threads=21
+Per-Host Resource Estimates: Memory=276MB
 F12:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.09MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[1443] cpu-comparison-result=62 [max(1 (self) vs 62 (sum children))]
@@ -312,11 +313,12 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  in pipelines: 10(GETNEXT), 13(GETNEXT), 05(OPEN)
 |
 |--F13:PLAN FRAGMENT [HASH(tpcds_partitioned_parquet_snap.customer.c_customer_sk)] hosts=10 instances=10 (adjusted from 120)
-|  |  Per-Instance Resources: mem-estimate=12.76MB mem-reservation=1.94MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=13.76MB mem-reservation=2.94MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[27756516] cpu-comparison-result=40 [max(40 (self) vs 31 (sum children))]
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=8955
 |  |
 |  08:HASH JOIN [RIGHT SEMI JOIN, PARTITIONED]
@@ -332,7 +334,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  JOIN BUILD
 |  |  |  join-table-id=01 plan-id=02 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_customer_sk
-|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF007[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=8955
 |  |  |
 |  |  25:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.customer.c_customer_sk)]
@@ -358,7 +360,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=02 plan-id=03 cohort-id=03
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
-|  |  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
+|  |  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=8955
 |  |  |  |
 |  |  |  23:EXCHANGE [BROADCAST]
@@ -384,7 +386,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=03 plan-id=04 cohort-id=04
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
-|  |  |  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
+|  |  |  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
 |  |  |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0 cost=39823
 |  |  |  |  |
 |  |  |  |  22:EXCHANGE [BROADCAST]
@@ -410,7 +412,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |  01:SCAN HDFS [tpcds_partitioned_parquet_snap.customer, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=1.55GB
 |  |  |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.customer.c_customer_sk)
-|  |  |     runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk
+|  |  |     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=30.00M size=1.55GB
 |  |  |       columns: all
@@ -422,7 +424,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |
 |  |  00:SCAN HDFS [tpcds_partitioned_parquet_snap.customer_demographics, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=11.15MB
-|  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk
+|  |     runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk
 |  |     stored statistics:
 |  |       table: rows=1.92M size=11.15MB
 |  |       columns: all
@@ -454,7 +456,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  JOIN BUILD
 |  |  |  join-table-id=04 plan-id=05 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
-|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  |  mem-estimate=5.81MB mem-reservation=5.81MB spill-buffer=64.00KB thread-reservation=0 cost=118
 |  |  |
 |  |  21:EXCHANGE [BROADCAST]
@@ -481,7 +483,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  05:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
 |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk)
-|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -498,7 +500,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  in pipelines: 10(GETNEXT), 13(GETNEXT)
 |
 F04:PLAN FRAGMENT [RANDOM] hosts=10 instances=20 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 Per-Instance Resources: mem-estimate=16.31MB mem-reservation=1.00MB thread-reservation=1
 max-parallelism=20 segment-costs=[112141478]
 09:UNION
@@ -520,7 +522,7 @@ max-parallelism=20 segment-costs=[112141478]
 |  |  JOIN BUILD
 |  |  |  join-table-id=06 plan-id=07 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
-|  |  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
+|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  |  mem-estimate=3.88MB mem-reservation=3.88MB spill-buffer=64.00KB thread-reservation=0 cost=118
 |  |  |
 |  |  20:EXCHANGE [BROADCAST]
@@ -547,7 +549,7 @@ max-parallelism=20 segment-costs=[112141478]
 |  13:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
 |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk)
-|     runtime filters: RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -572,7 +574,7 @@ max-parallelism=20 segment-costs=[112141478]
 |  JOIN BUILD
 |  |  join-table-id=05 plan-id=06 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
-|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  mem-estimate=3.88MB mem-reservation=3.88MB spill-buffer=64.00KB thread-reservation=0 cost=118
 |  |
 |  19:EXCHANGE [BROADCAST]
@@ -599,7 +601,7 @@ max-parallelism=20 segment-costs=[112141478]
 10:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
    predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk)
-   runtime filters: RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
@@ -610,8 +612,8 @@ max-parallelism=20 segment-costs=[112141478]
    tuple-ids=10 row-size=8B cardinality=13.97M(filtered from 216.00M) cost=20023992
    in pipelines: 10(GETNEXT)
 ---- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=59.81MB Threads=21
-Per-Host Resource Estimates: Memory=274MB
+Max Per-Host Resource Reservation: Memory=61.81MB Threads=21
+Per-Host Resource Estimates: Memory=276MB
 F12:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.09MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[1443] cpu-comparison-result=62 [max(1 (self) vs 62 (sum children))]
@@ -665,11 +667,12 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  in pipelines: 10(GETNEXT), 13(GETNEXT), 05(OPEN)
 |
 |--F13:PLAN FRAGMENT [HASH(tpcds_partitioned_parquet_snap.customer.c_customer_sk)] hosts=10 instances=10 (adjusted from 120)
-|  |  Per-Instance Resources: mem-estimate=12.76MB mem-reservation=1.94MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=13.76MB mem-reservation=2.94MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[27756516] cpu-comparison-result=40 [max(40 (self) vs 31 (sum children))]
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=8955
 |  |
 |  08:HASH JOIN [RIGHT SEMI JOIN, PARTITIONED]
@@ -685,7 +688,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  JOIN BUILD
 |  |  |  join-table-id=01 plan-id=02 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_customer_sk
-|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF007[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=8955
 |  |  |
 |  |  25:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.customer.c_customer_sk)]
@@ -711,7 +714,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=02 plan-id=03 cohort-id=03
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
-|  |  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
+|  |  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.customer.c_current_cdemo_sk
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=8955
 |  |  |  |
 |  |  |  23:EXCHANGE [BROADCAST]
@@ -737,7 +740,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=03 plan-id=04 cohort-id=04
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
-|  |  |  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
+|  |  |  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.customer_address.ca_address_sk
 |  |  |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0 cost=39823
 |  |  |  |  |
 |  |  |  |  22:EXCHANGE [BROADCAST]
@@ -763,7 +766,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |  01:SCAN HDFS [tpcds_partitioned_parquet_snap.customer, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=1.55GB
 |  |  |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.customer.c_customer_sk)
-|  |  |     runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk
+|  |  |     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.customer.c_current_addr_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=30.00M size=1.55GB
 |  |  |       columns: all
@@ -775,7 +778,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  |
 |  |  00:SCAN HDFS [tpcds_partitioned_parquet_snap.customer_demographics, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=11.15MB
-|  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk
+|  |     runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.customer_demographics.cd_demo_sk
 |  |     stored statistics:
 |  |       table: rows=1.92M size=11.15MB
 |  |       columns: all
@@ -807,7 +810,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  |  JOIN BUILD
 |  |  |  join-table-id=04 plan-id=05 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
-|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  |  mem-estimate=5.81MB mem-reservation=5.81MB spill-buffer=64.00KB thread-reservation=0 cost=118
 |  |  |
 |  |  21:EXCHANGE [BROADCAST]
@@ -834,7 +837,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  05:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
 |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk)
-|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -851,7 +854,7 @@ max-parallelism=10 segment-costs=[16194877, 56846] cpu-comparison-result=62 [max
 |  in pipelines: 10(GETNEXT), 13(GETNEXT)
 |
 F04:PLAN FRAGMENT [RANDOM] hosts=10 instances=20 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 Per-Instance Resources: mem-estimate=16.31MB mem-reservation=1.00MB thread-reservation=1
 max-parallelism=20 segment-costs=[112141478]
 09:UNION
@@ -873,7 +876,7 @@ max-parallelism=20 segment-costs=[112141478]
 |  |  JOIN BUILD
 |  |  |  join-table-id=06 plan-id=07 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
-|  |  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
+|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.date_dim_1.d_date_sk
 |  |  |  mem-estimate=3.88MB mem-reservation=3.88MB spill-buffer=64.00KB thread-reservation=0 cost=118
 |  |  |
 |  |  20:EXCHANGE [BROADCAST]
@@ -900,7 +903,7 @@ max-parallelism=20 segment-costs=[112141478]
 |  13:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
 |     predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk)
-|     runtime filters: RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_ship_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -925,7 +928,7 @@ max-parallelism=20 segment-costs=[112141478]
 |  JOIN BUILD
 |  |  join-table-id=05 plan-id=06 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
-|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  mem-estimate=3.88MB mem-reservation=3.88MB spill-buffer=64.00KB thread-reservation=0 cost=118
 |  |
 |  19:EXCHANGE [BROADCAST]
@@ -952,7 +955,7 @@ max-parallelism=20 segment-costs=[112141478]
 10:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
    predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk)
-   runtime filters: RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14a.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14a.test
index 42201dd01..04c8ac96f 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14a.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14a.test
@@ -294,7 +294,7 @@ PLAN-ROOT SINK
 |  120:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk = tpcds_partitioned_parquet_snap.item_9.i_item_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk = tpcds_partitioned_parquet_snap.item_9.i_item_sk
-|  |  runtime filters: RF062[bloom] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk, RF063[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk
+|  |  runtime filters: RF063[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=103,105,134 row-size=32B cardinality=12.78M cost=35156773
 |  |  in pipelines: 92(GETNEXT), 119(OPEN)
@@ -308,6 +308,7 @@ PLAN-ROOT SINK
 |  |  118:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: BRAND_ID = tpcds_partitioned_parquet_snap.item_9.i_brand_id, CATEGORY_ID = tpcds_partitioned_parquet_snap.item_9.i_category_id, CLASS_ID = tpcds_partitioned_parquet_snap.item_9.i_class_id
 |  |  |  fk/pk conjuncts: assumed fk/pk
+|  |  |  runtime filters: RF066[bloom] <- tpcds_partitioned_parquet_snap.item_9.i_brand_id, RF069[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_brand_id, RF070[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_category_id, RF071[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_class_id
 |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  |  tuple-ids=133,107 row-size=36B cardinality=36.00K cost=157271
 |  |  |  in pipelines: 117(GETNEXT), 95(OPEN)
@@ -369,6 +370,7 @@ PLAN-ROOT SINK
 |  |  |  |  |
 |  |  |  |  |--107:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_11.i_brand_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -418,13 +420,14 @@ PLAN-ROOT SINK
 |  |  |  102:HASH JOIN [INNER JOIN]
 |  |  |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk = tpcds_partitioned_parquet_snap.item_10.i_item_sk
 |  |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk = tpcds_partitioned_parquet_snap.item_10.i_item_sk
-|  |  |  |  runtime filters: RF076[bloom] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk, RF077[min_max] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk
+|  |  |  |  runtime filters: RF077[min_max] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk
 |  |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  |  tuple-ids=109,111,113 row-size=32B cardinality=8.64G cost=3780169729
 |  |  |  |  in pipelines: 98(GETNEXT), 101(OPEN)
 |  |  |  |
 |  |  |  |--101:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_10.i_brand_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -455,7 +458,7 @@ PLAN-ROOT SINK
 |  |  |  |
 |  |  |  98:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF077[min_max] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk, RF076[bloom] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk
+|  |  |     runtime filters: RF077[min_max] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -481,6 +484,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  |--114:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_12.i_brand_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -544,7 +548,7 @@ PLAN-ROOT SINK
 |  |
 |  92:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|     runtime filters: RF063[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF061[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF064[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_sold_date_sk, RF062[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk
+|     runtime filters: RF063[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF061[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF064[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -703,7 +707,7 @@ PLAN-ROOT SINK
 |  75:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk = tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk = tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  runtime filters: RF032[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF033[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  runtime filters: RF033[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=51,53,82 row-size=32B cardinality=25.47M cost=70011311
 |  |  in pipelines: 47(GETNEXT), 74(OPEN)
@@ -717,6 +721,7 @@ PLAN-ROOT SINK
 |  |  73:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: BRAND_ID = tpcds_partitioned_parquet_snap.item_4.i_brand_id, CATEGORY_ID = tpcds_partitioned_parquet_snap.item_4.i_category_id, CLASS_ID = tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  fk/pk conjuncts: assumed fk/pk
+|  |  |  runtime filters: RF036[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF037[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF038[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_class_id, RF039[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF040[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF041[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  |  tuple-ids=81,55 row-size=36B cardinality=36.00K cost=157271
 |  |  |  in pipelines: 72(GETNEXT), 50(OPEN)
@@ -778,6 +783,7 @@ PLAN-ROOT SINK
 |  |  |  |  |
 |  |  |  |  |--62:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_class_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -827,13 +833,14 @@ PLAN-ROOT SINK
 |  |  |  57:HASH JOIN [INNER JOIN]
 |  |  |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk = tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk = tpcds_partitioned_parquet_snap.item_5.i_item_sk
-|  |  |  |  runtime filters: RF046[bloom] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk, RF047[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
+|  |  |  |  runtime filters: RF047[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  |  tuple-ids=57,59,61 row-size=32B cardinality=8.64G cost=3780169729
 |  |  |  |  in pipelines: 53(GETNEXT), 56(OPEN)
 |  |  |  |
 |  |  |  |--56:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -864,7 +871,7 @@ PLAN-ROOT SINK
 |  |  |  |
 |  |  |  53:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF046[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
+|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -890,6 +897,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  |--69:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -953,7 +961,7 @@ PLAN-ROOT SINK
 |  |
 |  47:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF033[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF031[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF034[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_sold_date_sk, RF032[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
+|     runtime filters: RF033[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF031[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF034[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -1107,7 +1115,7 @@ PLAN-ROOT SINK
 30:HASH JOIN [INNER JOIN]
 |  hash predicates: tpcds_partitioned_parquet_snap.store_sales.ss_item_sk = tpcds_partitioned_parquet_snap.item.i_item_sk
 |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales.ss_item_sk = tpcds_partitioned_parquet_snap.item.i_item_sk
-|  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  runtime filters: RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  tuple-ids=0,2,31 row-size=32B cardinality=51.13M cost=140520124
 |  in pipelines: 02(GETNEXT), 29(OPEN)
@@ -1121,6 +1129,7 @@ PLAN-ROOT SINK
 |  28:HASH JOIN [INNER JOIN]
 |  |  hash predicates: BRAND_ID = tpcds_partitioned_parquet_snap.item.i_brand_id, CATEGORY_ID = tpcds_partitioned_parquet_snap.item.i_category_id, CLASS_ID = tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF007[bloom] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF008[bloom] <- tpcds_partitioned_parquet_snap.item.i_class_id, RF009[min_max] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF010[min_max] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  tuple-ids=30,4 row-size=36B cardinality=36.00K cost=157271
 |  |  in pipelines: 27(GETNEXT), 05(OPEN)
@@ -1175,13 +1184,14 @@ PLAN-ROOT SINK
 |  |  |  18:HASH JOIN [INNER JOIN]
 |  |  |  |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk = tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk = tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  |  runtime filters: RF021[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  |  tuple-ids=13,15,17 row-size=32B cardinality=4.32G cost=1890313155
 |  |  |  |  in pipelines: 14(GETNEXT), 17(OPEN)
 |  |  |  |
 |  |  |  |--17:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -1212,7 +1222,7 @@ PLAN-ROOT SINK
 |  |  |  |
 |  |  |  14:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
+|  |  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=4.32G size=280.96GB
 |  |  |       partitions: 1831/1831 rows=4.32G
@@ -1231,13 +1241,14 @@ PLAN-ROOT SINK
 |  |  12:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk = tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk = tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  runtime filters: RF017[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  tuple-ids=6,8,10 row-size=32B cardinality=8.64G cost=3780169729
 |  |  |  in pipelines: 08(GETNEXT), 11(OPEN)
 |  |  |
 |  |  |--11:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -1268,7 +1279,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  08:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
+|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -1294,6 +1305,7 @@ PLAN-ROOT SINK
 |  |
 |  |--24:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_class_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -1357,7 +1369,7 @@ PLAN-ROOT SINK
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
-   runtime filters: RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk
+   runtime filters: RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -1367,8 +1379,8 @@ PLAN-ROOT SINK
    tuple-ids=0 row-size=16B cardinality=511.58M(filtered from 8.64G) cost=117866905
    in pipelines: 02(GETNEXT)
 ---- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=10.72GB Threads=325
-Per-Host Resource Estimates: Memory=29.39GB
+Max Per-Host Resource Reservation: Memory=10.73GB Threads=325
+Per-Host Resource Estimates: Memory=29.41GB
 F96:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.05MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[634] cpu-comparison-result=1557 [max(1 (self) vs 1557 (sum children))]
@@ -1663,7 +1675,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 92(GETNEXT)
 |  |
 |  F63:PLAN FRAGMENT [RANDOM] hosts=10 instances=20 (adjusted from 120)
-|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=36.94MB mem-reservation=9.12MB thread-reservation=1
 |  max-parallelism=20 segment-costs=[185964162, 25876095] cpu-comparison-result=399 [max(20 (self) vs 399 (sum children))]
 |  123:AGGREGATE [STREAMING]
@@ -1717,12 +1729,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 92(GETNEXT), 219(OPEN)
 |  |
 |  |--F130:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=5.09MB mem-reservation=4.88MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  Per-Instance Resources: mem-estimate=4.09MB mem-reservation=3.88MB thread-reservation=1
 |  |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  |  JOIN BUILD
 |  |  |  join-table-id=33 plan-id=34 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_9.i_item_sk
-|  |  |  runtime filters: RF062[bloom] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk, RF063[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk
+|  |  |  runtime filters: RF063[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk
 |  |  |  mem-estimate=3.88MB mem-reservation=3.88MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  220:EXCHANGE [BROADCAST]
@@ -1762,11 +1774,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  in pipelines: 216(GETNEXT), 95(OPEN)
 |  |  |
 |  |  |--F131:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  |  Per-Instance Resources: mem-estimate=3.15MB mem-reservation=2.94MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=34 plan-id=35 cohort-id=07
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_9.i_brand_id, tpcds_partitioned_parquet_snap.item_9.i_category_id, tpcds_partitioned_parquet_snap.item_9.i_class_id
+|  |  |  |  runtime filters: RF066[bloom] <- tpcds_partitioned_parquet_snap.item_9.i_brand_id, RF069[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_brand_id, RF070[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_category_id, RF071[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_class_id
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |  |
 |  |  |  217:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item_9.i_brand_id,tpcds_partitioned_parquet_snap.item_9.i_class_id,tpcds_partitioned_parquet_snap.item_9.i_category_id)]
@@ -1891,10 +1904,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  |  in pipelines: 107(GETNEXT)
 |  |  |  |  |  |
 |  |  |  |  |  F75:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  |  107:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_11.i_brand_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -1964,7 +1979,6 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 98(GETNEXT)
 |  |  |  |
 |  |  |  F69:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  103:AGGREGATE [STREAMING]
@@ -1982,12 +1996,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 98(GETNEXT), 101(OPEN)
 |  |  |  |
 |  |  |  |--F134:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=37 plan-id=38 cohort-id=07
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_10.i_item_sk
-|  |  |  |  |  runtime filters: RF076[bloom] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk, RF077[min_max] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk
+|  |  |  |  |  runtime filters: RF077[min_max] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  206:EXCHANGE [BROADCAST]
@@ -1996,10 +2010,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  in pipelines: 101(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F71:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  101:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_10.i_brand_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -2047,7 +2063,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |
 |  |  |  98:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF077[min_max] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk, RF076[bloom] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk
+|  |  |     runtime filters: RF077[min_max] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -2100,10 +2116,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 114(GETNEXT)
 |  |  |  |
 |  |  |  F67:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  114:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_12.i_brand_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -2201,7 +2219,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |
 |  92:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|     runtime filters: RF063[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF061[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF064[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_sold_date_sk, RF062[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk
+|     runtime filters: RF063[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF061[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF064[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -2426,7 +2444,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 47(GETNEXT)
 |  |
 |  F31:PLAN FRAGMENT [RANDOM] hosts=10 instances=40 (adjusted from 120)
-|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=36.94MB mem-reservation=10.00MB thread-reservation=1
 |  max-parallelism=40 segment-costs=[349622955, 38481081] cpu-comparison-result=399 [max(40 (self) vs 399 (sum children))]
 |  78:AGGREGATE [STREAMING]
@@ -2480,12 +2498,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 47(GETNEXT), 189(OPEN)
 |  |
 |  |--F120:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=8.97MB mem-reservation=8.75MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  Per-Instance Resources: mem-estimate=7.97MB mem-reservation=7.75MB thread-reservation=1
 |  |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  |  JOIN BUILD
 |  |  |  join-table-id=23 plan-id=24 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  |  runtime filters: RF032[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF033[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  |  runtime filters: RF033[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  mem-estimate=7.75MB mem-reservation=7.75MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  190:EXCHANGE [BROADCAST]
@@ -2525,11 +2543,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  in pipelines: 186(GETNEXT), 50(OPEN)
 |  |  |
 |  |  |--F121:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=24 plan-id=25 cohort-id=06
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_brand_id, tpcds_partitioned_parquet_snap.item_4.i_category_id, tpcds_partitioned_parquet_snap.item_4.i_class_id
+|  |  |  |  runtime filters: RF036[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF037[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF038[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_class_id, RF039[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF040[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF041[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |  |
 |  |  |  187:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item_4.i_brand_id,tpcds_partitioned_parquet_snap.item_4.i_class_id,tpcds_partitioned_parquet_snap.item_4.i_category_id)]
@@ -2654,10 +2673,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  |  in pipelines: 62(GETNEXT)
 |  |  |  |  |  |
 |  |  |  |  |  F43:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  |  62:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_class_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -2727,7 +2748,6 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 53(GETNEXT)
 |  |  |  |
 |  |  |  F37:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  58:AGGREGATE [STREAMING]
@@ -2745,12 +2765,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 53(GETNEXT), 56(OPEN)
 |  |  |  |
 |  |  |  |--F124:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=27 plan-id=28 cohort-id=06
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_5.i_item_sk
-|  |  |  |  |  runtime filters: RF046[bloom] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk, RF047[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
+|  |  |  |  |  runtime filters: RF047[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  176:EXCHANGE [BROADCAST]
@@ -2759,10 +2779,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  in pipelines: 56(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F39:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  56:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -2810,7 +2832,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |
 |  |  |  53:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF046[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
+|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -2863,10 +2885,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 69(GETNEXT)
 |  |  |  |
 |  |  |  F35:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  69:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -2964,7 +2988,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |
 |  47:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF033[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF031[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF034[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_sold_date_sk, RF032[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
+|     runtime filters: RF033[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF031[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF034[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -3184,7 +3208,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  in pipelines: 02(GETNEXT)
 |
 F00:PLAN FRAGMENT [RANDOM] hosts=10 instances=70 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 Per-Instance Resources: mem-estimate=36.94MB mem-reservation=17.00MB thread-reservation=1
 max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399 [max(70 (self) vs 399 (sum children))]
 33:AGGREGATE [STREAMING]
@@ -3238,12 +3262,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  in pipelines: 02(GETNEXT), 159(OPEN)
 |
 |--F110:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=14.78MB mem-reservation=14.56MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  Per-Instance Resources: mem-estimate=13.78MB mem-reservation=13.56MB thread-reservation=1
 |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  JOIN BUILD
 |  |  join-table-id=13 plan-id=14 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
-|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=13.56MB mem-reservation=13.56MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |
 |  160:EXCHANGE [BROADCAST]
@@ -3283,11 +3307,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  in pipelines: 156(GETNEXT), 05(OPEN)
 |  |
 |  |--F111:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  JOIN BUILD
 |  |  |  join-table-id=14 plan-id=15 cohort-id=05
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_brand_id, tpcds_partitioned_parquet_snap.item.i_category_id, tpcds_partitioned_parquet_snap.item.i_class_id
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF007[bloom] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF008[bloom] <- tpcds_partitioned_parquet_snap.item.i_class_id, RF009[min_max] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF010[min_max] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  157:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item.i_brand_id,tpcds_partitioned_parquet_snap.item.i_class_id,tpcds_partitioned_parquet_snap.item.i_category_id)]
@@ -3381,7 +3406,6 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  in pipelines: 14(GETNEXT)
 |  |  |  |
 |  |  |  F10:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=6.00MB thread-reservation=1
 |  |  |  max-parallelism=1030 segment-costs=[10292257811, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  19:AGGREGATE [STREAMING]
@@ -3399,12 +3423,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  in pipelines: 14(GETNEXT), 17(OPEN)
 |  |  |  |
 |  |  |  |--F116:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=19 plan-id=20 cohort-id=05
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  |  |  runtime filters: RF021[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  150:EXCHANGE [BROADCAST]
@@ -3413,10 +3437,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  |  in pipelines: 17(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F12:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  17:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -3464,7 +3490,7 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |
 |  |  |  14:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
+|  |  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=4.32G size=280.96GB
 |  |  |       partitions: 1831/1831 rows=4.32G
@@ -3486,7 +3512,6 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  in pipelines: 08(GETNEXT)
 |  |  |
 |  |  F06:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  13:AGGREGATE [STREAMING]
@@ -3504,12 +3529,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  in pipelines: 08(GETNEXT), 11(OPEN)
 |  |  |
 |  |  |--F114:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=17 plan-id=18 cohort-id=05
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  |  runtime filters: RF017[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |
 |  |  |  146:EXCHANGE [BROADCAST]
@@ -3518,10 +3543,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  in pipelines: 11(GETNEXT)
 |  |  |  |
 |  |  |  F08:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  11:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -3569,7 +3596,7 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |
 |  |  08:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
+|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -3622,10 +3649,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  in pipelines: 24(GETNEXT)
 |  |  |
 |  |  F04:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  max-parallelism=4 segment-costs=[106272]
 |  |  24:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_class_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -3723,7 +3752,7 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
-   runtime filters: RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk
+   runtime filters: RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -3733,8 +3762,8 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
    tuple-ids=0 row-size=16B cardinality=511.58M(filtered from 8.64G) cost=117866905
    in pipelines: 02(GETNEXT)
 ---- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=10.72GB Threads=325
-Per-Host Resource Estimates: Memory=29.39GB
+Max Per-Host Resource Reservation: Memory=10.73GB Threads=325
+Per-Host Resource Estimates: Memory=29.41GB
 F96:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.05MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[634] cpu-comparison-result=1557 [max(1 (self) vs 1557 (sum children))]
@@ -4029,7 +4058,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 92(GETNEXT)
 |  |
 |  F63:PLAN FRAGMENT [RANDOM] hosts=10 instances=20 (adjusted from 120)
-|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=36.94MB mem-reservation=9.12MB thread-reservation=1
 |  max-parallelism=20 segment-costs=[185964162, 25876095] cpu-comparison-result=399 [max(20 (self) vs 399 (sum children))]
 |  123:AGGREGATE [STREAMING]
@@ -4083,12 +4112,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 92(GETNEXT), 219(OPEN)
 |  |
 |  |--F130:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=5.09MB mem-reservation=4.88MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  Per-Instance Resources: mem-estimate=4.09MB mem-reservation=3.88MB thread-reservation=1
 |  |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  |  JOIN BUILD
 |  |  |  join-table-id=33 plan-id=34 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_9.i_item_sk
-|  |  |  runtime filters: RF062[bloom] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk, RF063[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk
+|  |  |  runtime filters: RF063[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_item_sk
 |  |  |  mem-estimate=3.88MB mem-reservation=3.88MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  220:EXCHANGE [BROADCAST]
@@ -4128,11 +4157,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  in pipelines: 216(GETNEXT), 95(OPEN)
 |  |  |
 |  |  |--F131:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  |  Per-Instance Resources: mem-estimate=3.15MB mem-reservation=2.94MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=34 plan-id=35 cohort-id=07
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_9.i_brand_id, tpcds_partitioned_parquet_snap.item_9.i_category_id, tpcds_partitioned_parquet_snap.item_9.i_class_id
+|  |  |  |  runtime filters: RF066[bloom] <- tpcds_partitioned_parquet_snap.item_9.i_brand_id, RF069[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_brand_id, RF070[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_category_id, RF071[min_max] <- tpcds_partitioned_parquet_snap.item_9.i_class_id
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |  |
 |  |  |  217:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item_9.i_brand_id,tpcds_partitioned_parquet_snap.item_9.i_class_id,tpcds_partitioned_parquet_snap.item_9.i_category_id)]
@@ -4257,10 +4287,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  |  in pipelines: 107(GETNEXT)
 |  |  |  |  |  |
 |  |  |  |  |  F75:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  |  107:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_11.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_11.i_brand_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -4330,7 +4362,6 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 98(GETNEXT)
 |  |  |  |
 |  |  |  F69:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  103:AGGREGATE [STREAMING]
@@ -4348,12 +4379,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 98(GETNEXT), 101(OPEN)
 |  |  |  |
 |  |  |  |--F134:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=37 plan-id=38 cohort-id=07
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_10.i_item_sk
-|  |  |  |  |  runtime filters: RF076[bloom] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk, RF077[min_max] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk
+|  |  |  |  |  runtime filters: RF077[min_max] <- tpcds_partitioned_parquet_snap.item_10.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  206:EXCHANGE [BROADCAST]
@@ -4362,10 +4393,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  in pipelines: 101(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F71:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  101:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_10.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_10.i_brand_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -4413,7 +4446,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |
 |  |  |  98:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF077[min_max] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk, RF076[bloom] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk
+|  |  |     runtime filters: RF077[min_max] -> tpcds_partitioned_parquet_snap.store_sales_4.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -4466,10 +4499,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 114(GETNEXT)
 |  |  |  |
 |  |  |  F67:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  114:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF069[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_brand_id, RF070[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_category_id, RF071[min_max] -> tpcds_partitioned_parquet_snap.item_12.i_class_id, RF066[bloom] -> tpcds_partitioned_parquet_snap.item_12.i_brand_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -4567,7 +4602,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |
 |  92:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|     runtime filters: RF063[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF061[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF064[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_sold_date_sk, RF062[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk
+|     runtime filters: RF063[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF061[min_max] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_item_sk, RF064[bloom] -> tpcds_partitioned_parquet_snap.web_sales_3.ws_sold_date_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -4792,7 +4827,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 47(GETNEXT)
 |  |
 |  F31:PLAN FRAGMENT [RANDOM] hosts=10 instances=40 (adjusted from 120)
-|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=36.94MB mem-reservation=10.00MB thread-reservation=1
 |  max-parallelism=40 segment-costs=[349622955, 38481081] cpu-comparison-result=399 [max(40 (self) vs 399 (sum children))]
 |  78:AGGREGATE [STREAMING]
@@ -4846,12 +4881,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  in pipelines: 47(GETNEXT), 189(OPEN)
 |  |
 |  |--F120:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=8.97MB mem-reservation=8.75MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  Per-Instance Resources: mem-estimate=7.97MB mem-reservation=7.75MB thread-reservation=1
 |  |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  |  JOIN BUILD
 |  |  |  join-table-id=23 plan-id=24 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  |  runtime filters: RF032[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF033[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  |  runtime filters: RF033[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  mem-estimate=7.75MB mem-reservation=7.75MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  190:EXCHANGE [BROADCAST]
@@ -4891,11 +4926,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  in pipelines: 186(GETNEXT), 50(OPEN)
 |  |  |
 |  |  |--F121:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=24 plan-id=25 cohort-id=06
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_brand_id, tpcds_partitioned_parquet_snap.item_4.i_category_id, tpcds_partitioned_parquet_snap.item_4.i_class_id
+|  |  |  |  runtime filters: RF036[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF037[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF038[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_class_id, RF039[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF040[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF041[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |  |
 |  |  |  187:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item_4.i_brand_id,tpcds_partitioned_parquet_snap.item_4.i_class_id,tpcds_partitioned_parquet_snap.item_4.i_category_id)]
@@ -5020,10 +5056,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  |  in pipelines: 62(GETNEXT)
 |  |  |  |  |  |
 |  |  |  |  |  F43:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  |  62:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_class_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -5093,7 +5131,6 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 53(GETNEXT)
 |  |  |  |
 |  |  |  F37:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  58:AGGREGATE [STREAMING]
@@ -5111,12 +5148,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 53(GETNEXT), 56(OPEN)
 |  |  |  |
 |  |  |  |--F124:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=27 plan-id=28 cohort-id=06
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_5.i_item_sk
-|  |  |  |  |  runtime filters: RF046[bloom] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk, RF047[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
+|  |  |  |  |  runtime filters: RF047[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  176:EXCHANGE [BROADCAST]
@@ -5125,10 +5162,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  |  in pipelines: 56(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F39:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  56:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -5176,7 +5215,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |
 |  |  |  53:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF046[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
+|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -5229,10 +5268,12 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |  |  |  in pipelines: 69(GETNEXT)
 |  |  |  |
 |  |  |  F35:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  69:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF039[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF040[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF041[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_class_id, RF036[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF037[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF038[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -5330,7 +5371,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  |
 |  47:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF033[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF031[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF034[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_sold_date_sk, RF032[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
+|     runtime filters: RF033[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF031[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF034[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -5550,7 +5591,7 @@ max-parallelism=70 segment-costs=[29697476, 24044235, 16389428, 11505411, 322693
 |  in pipelines: 02(GETNEXT)
 |
 F00:PLAN FRAGMENT [RANDOM] hosts=10 instances=70 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 Per-Instance Resources: mem-estimate=36.94MB mem-reservation=17.00MB thread-reservation=1
 max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399 [max(70 (self) vs 399 (sum children))]
 33:AGGREGATE [STREAMING]
@@ -5604,12 +5645,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  in pipelines: 02(GETNEXT), 159(OPEN)
 |
 |--F110:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=14.78MB mem-reservation=14.56MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  Per-Instance Resources: mem-estimate=13.78MB mem-reservation=13.56MB thread-reservation=1
 |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  JOIN BUILD
 |  |  join-table-id=13 plan-id=14 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
-|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=13.56MB mem-reservation=13.56MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |
 |  160:EXCHANGE [BROADCAST]
@@ -5649,11 +5690,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  in pipelines: 156(GETNEXT), 05(OPEN)
 |  |
 |  |--F111:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  JOIN BUILD
 |  |  |  join-table-id=14 plan-id=15 cohort-id=05
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_brand_id, tpcds_partitioned_parquet_snap.item.i_category_id, tpcds_partitioned_parquet_snap.item.i_class_id
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF007[bloom] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF008[bloom] <- tpcds_partitioned_parquet_snap.item.i_class_id, RF009[min_max] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF010[min_max] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  157:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item.i_brand_id,tpcds_partitioned_parquet_snap.item.i_class_id,tpcds_partitioned_parquet_snap.item.i_category_id)]
@@ -5747,7 +5789,6 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  in pipelines: 14(GETNEXT)
 |  |  |  |
 |  |  |  F10:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=6.00MB thread-reservation=1
 |  |  |  max-parallelism=1030 segment-costs=[10292257811, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  19:AGGREGATE [STREAMING]
@@ -5765,12 +5806,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  in pipelines: 14(GETNEXT), 17(OPEN)
 |  |  |  |
 |  |  |  |--F116:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=19 plan-id=20 cohort-id=05
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  |  |  runtime filters: RF021[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  150:EXCHANGE [BROADCAST]
@@ -5779,10 +5820,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  |  in pipelines: 17(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F12:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  17:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -5830,7 +5873,7 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |
 |  |  |  14:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
+|  |  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=4.32G size=280.96GB
 |  |  |       partitions: 1831/1831 rows=4.32G
@@ -5852,7 +5895,6 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  in pipelines: 08(GETNEXT)
 |  |  |
 |  |  F06:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  13:AGGREGATE [STREAMING]
@@ -5870,12 +5912,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  in pipelines: 08(GETNEXT), 11(OPEN)
 |  |  |
 |  |  |--F114:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=17 plan-id=18 cohort-id=05
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  |  runtime filters: RF017[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |
 |  |  |  146:EXCHANGE [BROADCAST]
@@ -5884,10 +5926,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  |  in pipelines: 11(GETNEXT)
 |  |  |  |
 |  |  |  F08:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  11:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -5935,7 +5979,7 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |
 |  |  08:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
+|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -5988,10 +6032,12 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |  |  |  in pipelines: 24(GETNEXT)
 |  |  |
 |  |  F04:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  max-parallelism=4 segment-costs=[106272]
 |  |  24:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF010[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF011[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_class_id, RF006[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF007[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF008[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_class_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -6089,7 +6135,7 @@ max-parallelism=70 segment-costs=[654821526, 47790137] cpu-comparison-result=399
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
-   runtime filters: RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk
+   runtime filters: RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14b.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14b.test
index 7f0b158c8..f37019ca5 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14b.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q14b.test
@@ -321,7 +321,7 @@ PLAN-ROOT SINK
 |  |
 |  72:HASH JOIN [LEFT SEMI JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk = tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  runtime filters: RF042[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF043[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  runtime filters: RF043[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  tuple-ids=52 row-size=16B cardinality=3.31M(filtered from 863.56M) cost=157363455
 |  |  in pipelines: 47(GETNEXT), 70(OPEN)
@@ -329,6 +329,7 @@ PLAN-ROOT SINK
 |  |--71:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: BRAND_ID = tpcds_partitioned_parquet_snap.item_4.i_brand_id, CATEGORY_ID = tpcds_partitioned_parquet_snap.item_4.i_category_id, CLASS_ID = tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  fk/pk conjuncts: assumed fk/pk
+|  |  |  runtime filters: RF044[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF045[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF046[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_class_id, RF047[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF048[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF049[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  |  tuple-ids=80,54 row-size=36B cardinality=36.00K cost=157271
 |  |  |  in pipelines: 70(GETNEXT), 48(OPEN)
@@ -382,13 +383,14 @@ PLAN-ROOT SINK
 |  |  |  |  61:HASH JOIN [INNER JOIN]
 |  |  |  |  |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk = tpcds_partitioned_parquet_snap.item_6.i_item_sk
 |  |  |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk = tpcds_partitioned_parquet_snap.item_6.i_item_sk
-|  |  |  |  |  runtime filters: RF058[bloom] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk, RF059[min_max] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk
+|  |  |  |  |  runtime filters: RF059[min_max] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk
 |  |  |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  |  |  tuple-ids=63,65,67 row-size=32B cardinality=4.32G cost=1890313155
 |  |  |  |  |  in pipelines: 57(GETNEXT), 60(OPEN)
 |  |  |  |  |
 |  |  |  |  |--60:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_class_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -419,7 +421,7 @@ PLAN-ROOT SINK
 |  |  |  |  |
 |  |  |  |  57:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |  |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |  |     runtime filters: RF059[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF058[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
+|  |  |  |     runtime filters: RF059[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=4.32G size=280.96GB
 |  |  |  |       partitions: 1831/1831 rows=4.32G
@@ -438,13 +440,14 @@ PLAN-ROOT SINK
 |  |  |  55:HASH JOIN [INNER JOIN]
 |  |  |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk = tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk = tpcds_partitioned_parquet_snap.item_5.i_item_sk
-|  |  |  |  runtime filters: RF054[bloom] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk, RF055[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
+|  |  |  |  runtime filters: RF055[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  |  tuple-ids=56,58,60 row-size=32B cardinality=8.64G cost=3780169729
 |  |  |  |  in pipelines: 51(GETNEXT), 54(OPEN)
 |  |  |  |
 |  |  |  |--54:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -475,7 +478,7 @@ PLAN-ROOT SINK
 |  |  |  |
 |  |  |  51:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF055[min_max] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk, RF054[bloom] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk
+|  |  |     runtime filters: RF055[min_max] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -501,6 +504,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  |--67:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -543,7 +547,7 @@ PLAN-ROOT SINK
 |  |
 |  47:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF043[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF039[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF040[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_sold_date_sk, RF042[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
+|     runtime filters: RF043[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF039[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF040[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -744,7 +748,7 @@ PLAN-ROOT SINK
 |
 25:HASH JOIN [LEFT SEMI JOIN]
 |  hash predicates: tpcds_partitioned_parquet_snap.store_sales.ss_item_sk = tpcds_partitioned_parquet_snap.item.i_item_sk
-|  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  runtime filters: RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  tuple-ids=0 row-size=16B cardinality=3.31M(filtered from 863.56M) cost=157363455
 |  in pipelines: 00(GETNEXT), 23(OPEN)
@@ -752,6 +756,7 @@ PLAN-ROOT SINK
 |--24:HASH JOIN [INNER JOIN]
 |  |  hash predicates: BRAND_ID = tpcds_partitioned_parquet_snap.item.i_brand_id, CATEGORY_ID = tpcds_partitioned_parquet_snap.item.i_category_id, CLASS_ID = tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF013[bloom] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF014[bloom] <- tpcds_partitioned_parquet_snap.item.i_class_id, RF015[min_max] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF016[min_max] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF017[min_max] <- tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  |  tuple-ids=28,2 row-size=36B cardinality=36.00K cost=157271
 |  |  in pipelines: 23(GETNEXT), 01(OPEN)
@@ -805,13 +810,14 @@ PLAN-ROOT SINK
 |  |  |  14:HASH JOIN [INNER JOIN]
 |  |  |  |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk = tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk = tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  |  runtime filters: RF026[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF027[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  |  runtime filters: RF027[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  |  tuple-ids=11,13,15 row-size=32B cardinality=4.32G cost=1890313155
 |  |  |  |  in pipelines: 10(GETNEXT), 13(OPEN)
 |  |  |  |
 |  |  |  |--13:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -842,7 +848,7 @@ PLAN-ROOT SINK
 |  |  |  |
 |  |  |  10:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |     runtime filters: RF027[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF026[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
+|  |  |     runtime filters: RF027[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=4.32G size=280.96GB
 |  |  |       partitions: 1831/1831 rows=4.32G
@@ -861,13 +867,14 @@ PLAN-ROOT SINK
 |  |  08:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk = tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk = tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  runtime filters: RF022[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF023[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  runtime filters: RF023[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  mem-estimate=34.00MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  |  tuple-ids=4,6,8 row-size=32B cardinality=8.64G cost=3780169729
 |  |  |  in pipelines: 04(GETNEXT), 07(OPEN)
 |  |  |
 |  |  |--07:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -898,7 +905,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  04:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF023[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF022[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
+|  |     runtime filters: RF023[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -924,6 +931,7 @@ PLAN-ROOT SINK
 |  |
 |  |--20:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_class_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -966,7 +974,7 @@ PLAN-ROOT SINK
 |
 00:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
-   runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk
+   runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -976,8 +984,8 @@ PLAN-ROOT SINK
    tuple-ids=0 row-size=16B cardinality=3.31M(filtered from 8.64G) cost=7639521
    in pipelines: 00(GETNEXT)
 ---- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=6.10GB Threads=227
-Per-Host Resource Estimates: Memory=16.53GB
+Max Per-Host Resource Reservation: Memory=6.11GB Threads=227
+Per-Host Resource Estimates: Memory=16.54GB
 F64:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.65MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[1239] cpu-comparison-result=1038 [max(1 (self) vs 1038 (sum children))]
@@ -1228,7 +1236,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  in pipelines: 47(GETNEXT)
 |  |
 |  F32:PLAN FRAGMENT [RANDOM] hosts=10 instances=7 (adjusted from 120)
-|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=40.06MB mem-reservation=17.00MB thread-reservation=1
 |  max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [max(7 (self) vs 399 (sum children))]
 |  80:AGGREGATE [STREAMING]
@@ -1372,12 +1380,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  in pipelines: 47(GETNEXT), 141(OPEN)
 |  |
 |  |--F73:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=5.54MB mem-reservation=3.88MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  Per-Instance Resources: mem-estimate=4.54MB mem-reservation=2.88MB thread-reservation=1
 |  |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  |  JOIN BUILD
 |  |  |  join-table-id=08 plan-id=09 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  |  runtime filters: RF042[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF043[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  |  runtime filters: RF043[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  143:EXCHANGE [BROADCAST]
@@ -1397,11 +1405,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  in pipelines: 141(GETNEXT), 48(OPEN)
 |  |  |
 |  |  |--F74:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=09 plan-id=10 cohort-id=05
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_brand_id, tpcds_partitioned_parquet_snap.item_4.i_category_id, tpcds_partitioned_parquet_snap.item_4.i_class_id
+|  |  |  |  runtime filters: RF044[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF045[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF046[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_class_id, RF047[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF048[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF049[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |  |
 |  |  |  142:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item_4.i_brand_id,tpcds_partitioned_parquet_snap.item_4.i_class_id,tpcds_partitioned_parquet_snap.item_4.i_category_id)]
@@ -1494,7 +1503,6 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  in pipelines: 57(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F41:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=6.00MB thread-reservation=1
 |  |  |  |  max-parallelism=1030 segment-costs=[10292257811, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  |  62:AGGREGATE [STREAMING]
@@ -1512,12 +1520,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  in pipelines: 57(GETNEXT), 60(OPEN)
 |  |  |  |  |
 |  |  |  |  |--F79:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  |  JOIN BUILD
 |  |  |  |  |  |  join-table-id=14 plan-id=15 cohort-id=05
 |  |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_6.i_item_sk
-|  |  |  |  |  |  runtime filters: RF058[bloom] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk, RF059[min_max] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk
+|  |  |  |  |  |  runtime filters: RF059[min_max] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk
 |  |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |  |
 |  |  |  |  |  135:EXCHANGE [BROADCAST]
@@ -1526,10 +1534,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  |  in pipelines: 60(GETNEXT)
 |  |  |  |  |  |
 |  |  |  |  |  F43:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  |  60:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_class_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -1577,7 +1587,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |
 |  |  |  |  57:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |  |     runtime filters: RF059[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF058[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
+|  |  |  |     runtime filters: RF059[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=4.32G size=280.96GB
 |  |  |  |       partitions: 1831/1831 rows=4.32G
@@ -1599,7 +1609,6 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  in pipelines: 51(GETNEXT)
 |  |  |  |
 |  |  |  F37:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  56:AGGREGATE [STREAMING]
@@ -1617,12 +1626,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  in pipelines: 51(GETNEXT), 54(OPEN)
 |  |  |  |
 |  |  |  |--F77:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=12 plan-id=13 cohort-id=05
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_5.i_item_sk
-|  |  |  |  |  runtime filters: RF054[bloom] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk, RF055[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
+|  |  |  |  |  runtime filters: RF055[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  131:EXCHANGE [BROADCAST]
@@ -1631,10 +1640,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  in pipelines: 54(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F39:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  54:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -1682,7 +1693,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |
 |  |  |  51:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF055[min_max] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk, RF054[bloom] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk
+|  |  |     runtime filters: RF055[min_max] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -1735,10 +1746,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  in pipelines: 67(GETNEXT)
 |  |  |  |
 |  |  |  F35:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  67:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -1798,7 +1811,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |
 |  47:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF043[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF039[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF040[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_sold_date_sk, RF042[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
+|     runtime filters: RF043[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF039[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF040[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -2018,7 +2031,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  in pipelines: 00(GETNEXT)
 |
 F00:PLAN FRAGMENT [RANDOM] hosts=10 instances=7 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 Per-Instance Resources: mem-estimate=40.06MB mem-reservation=17.00MB thread-reservation=1
 max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [max(7 (self) vs 399 (sum children))]
 33:AGGREGATE [STREAMING]
@@ -2163,12 +2176,12 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  in pipelines: 00(GETNEXT), 111(OPEN)
 |
 |--F88:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=5.54MB mem-reservation=3.88MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  Per-Instance Resources: mem-estimate=4.54MB mem-reservation=2.88MB thread-reservation=1
 |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  JOIN BUILD
 |  |  join-table-id=23 plan-id=24 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
-|  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0 cost=36000
 |  |
 |  113:EXCHANGE [BROADCAST]
@@ -2188,11 +2201,12 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  in pipelines: 111(GETNEXT), 01(OPEN)
 |  |
 |  |--F89:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  JOIN BUILD
 |  |  |  join-table-id=24 plan-id=25 cohort-id=08
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_brand_id, tpcds_partitioned_parquet_snap.item.i_category_id, tpcds_partitioned_parquet_snap.item.i_class_id
+|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF013[bloom] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF014[bloom] <- tpcds_partitioned_parquet_snap.item.i_class_id, RF015[min_max] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF016[min_max] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF017[min_max] <- tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  112:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item.i_brand_id,tpcds_partitioned_parquet_snap.item.i_class_id,tpcds_partitioned_parquet_snap.item.i_category_id)]
@@ -2285,7 +2299,6 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  |  in pipelines: 10(GETNEXT)
 |  |  |  |
 |  |  |  F09:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=6.00MB thread-reservation=1
 |  |  |  max-parallelism=1030 segment-costs=[10292257811, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  15:AGGREGATE [STREAMING]
@@ -2303,12 +2316,12 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  |  in pipelines: 10(GETNEXT), 13(OPEN)
 |  |  |  |
 |  |  |  |--F94:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=29 plan-id=30 cohort-id=08
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  |  |  runtime filters: RF026[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF027[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  |  |  runtime filters: RF027[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  105:EXCHANGE [BROADCAST]
@@ -2317,10 +2330,12 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  |  |  in pipelines: 13(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F11:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  13:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -2368,7 +2383,7 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  |
 |  |  |  10:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |     runtime filters: RF027[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF026[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
+|  |  |     runtime filters: RF027[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=4.32G size=280.96GB
 |  |  |       partitions: 1831/1831 rows=4.32G
@@ -2390,7 +2405,6 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  in pipelines: 04(GETNEXT)
 |  |  |
 |  |  F05:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  09:AGGREGATE [STREAMING]
@@ -2408,12 +2422,12 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  in pipelines: 04(GETNEXT), 07(OPEN)
 |  |  |
 |  |  |--F92:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=27 plan-id=28 cohort-id=08
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  |  runtime filters: RF022[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF023[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  |  runtime filters: RF023[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |
 |  |  |  101:EXCHANGE [BROADCAST]
@@ -2422,10 +2436,12 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  |  in pipelines: 07(GETNEXT)
 |  |  |  |
 |  |  |  F07:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  07:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -2473,7 +2489,7 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |
 |  |  04:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF023[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF022[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
+|  |     runtime filters: RF023[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -2526,10 +2542,12 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |  |  |  in pipelines: 20(GETNEXT)
 |  |  |
 |  |  F03:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  max-parallelism=4 segment-costs=[106272]
 |  |  20:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_class_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -2589,7 +2607,7 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
 |
 00:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
-   runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk
+   runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -2599,8 +2617,8 @@ max-parallelism=7 segment-costs=[201655276, 8568806] cpu-comparison-result=399 [
    tuple-ids=0 row-size=16B cardinality=33.16M(filtered from 8.64G) cost=7639521
    in pipelines: 00(GETNEXT)
 ---- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=6.04GB Threads=229
-Per-Host Resource Estimates: Memory=16.49GB
+Max Per-Host Resource Reservation: Memory=6.05GB Threads=229
+Per-Host Resource Estimates: Memory=16.50GB
 F66:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.65MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[1239] cpu-comparison-result=1038 [max(1 (self) vs 1038 (sum children))]
@@ -2901,7 +2919,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  in pipelines: 47(GETNEXT)
 |  |
 |  F33:PLAN FRAGMENT [RANDOM] hosts=10 instances=7 (adjusted from 120)
-|  Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+|  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  Per-Instance Resources: mem-estimate=18.03MB mem-reservation=8.00MB thread-reservation=1
 |  max-parallelism=7 segment-costs=[195386723]
 |  77:HASH JOIN [INNER JOIN, BROADCAST]
@@ -3003,12 +3021,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  in pipelines: 47(GETNEXT), 142(OPEN)
 |  |
 |  |--F75:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=5.54MB mem-reservation=3.88MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  Per-Instance Resources: mem-estimate=4.54MB mem-reservation=2.88MB thread-reservation=1
 |  |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  |  JOIN BUILD
 |  |  |  join-table-id=08 plan-id=09 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  |  runtime filters: RF042[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF043[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  |  runtime filters: RF043[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  144:EXCHANGE [BROADCAST]
@@ -3028,11 +3046,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  in pipelines: 142(GETNEXT), 48(OPEN)
 |  |  |
 |  |  |--F76:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=09 plan-id=10 cohort-id=05
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_brand_id, tpcds_partitioned_parquet_snap.item_4.i_category_id, tpcds_partitioned_parquet_snap.item_4.i_class_id
+|  |  |  |  runtime filters: RF044[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF045[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF046[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_class_id, RF047[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_brand_id, RF048[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_category_id, RF049[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_class_id
 |  |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |  |
 |  |  |  143:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item_4.i_brand_id,tpcds_partitioned_parquet_snap.item_4.i_class_id,tpcds_partitioned_parquet_snap.item_4.i_category_id)]
@@ -3125,7 +3144,6 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  in pipelines: 57(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F42:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=6.00MB thread-reservation=1
 |  |  |  |  max-parallelism=1030 segment-costs=[10292257811, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  |  62:AGGREGATE [STREAMING]
@@ -3143,12 +3161,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  in pipelines: 57(GETNEXT), 60(OPEN)
 |  |  |  |  |
 |  |  |  |  |--F81:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  |  JOIN BUILD
 |  |  |  |  |  |  join-table-id=14 plan-id=15 cohort-id=05
 |  |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_6.i_item_sk
-|  |  |  |  |  |  runtime filters: RF058[bloom] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk, RF059[min_max] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk
+|  |  |  |  |  |  runtime filters: RF059[min_max] <- tpcds_partitioned_parquet_snap.item_6.i_item_sk
 |  |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |  |
 |  |  |  |  |  136:EXCHANGE [BROADCAST]
@@ -3157,10 +3175,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  |  in pipelines: 60(GETNEXT)
 |  |  |  |  |  |
 |  |  |  |  |  F44:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  |  60:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_6.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_6.i_class_id
 |  |  |  |  |     stored statistics:
 |  |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |  |       columns: all
@@ -3208,7 +3228,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |
 |  |  |  |  57:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |  |     runtime filters: RF059[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk, RF058[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
+|  |  |  |     runtime filters: RF059[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_1.cs_item_sk
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=4.32G size=280.96GB
 |  |  |  |       partitions: 1831/1831 rows=4.32G
@@ -3230,7 +3250,6 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  in pipelines: 51(GETNEXT)
 |  |  |  |
 |  |  |  F38:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  56:AGGREGATE [STREAMING]
@@ -3248,12 +3267,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  in pipelines: 51(GETNEXT), 54(OPEN)
 |  |  |  |
 |  |  |  |--F79:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=12 plan-id=13 cohort-id=05
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_5.i_item_sk
-|  |  |  |  |  runtime filters: RF054[bloom] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk, RF055[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
+|  |  |  |  |  runtime filters: RF055[min_max] <- tpcds_partitioned_parquet_snap.item_5.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  132:EXCHANGE [BROADCAST]
@@ -3262,10 +3281,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  |  in pipelines: 54(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F40:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  54:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_5.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_5.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -3313,7 +3334,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |
 |  |  |  51:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |  |     runtime filters: RF055[min_max] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk, RF054[bloom] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk
+|  |  |     runtime filters: RF055[min_max] -> tpcds_partitioned_parquet_snap.store_sales_3.ss_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=8.64G size=389.90GB
 |  |  |       partitions: 1824/1824 rows=8.64G
@@ -3366,10 +3387,12 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |  |  |  in pipelines: 67(GETNEXT)
 |  |  |  |
 |  |  |  F36:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  67:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF047[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF048[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF049[min_max] -> tpcds_partitioned_parquet_snap.item_7.i_class_id, RF044[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_brand_id, RF045[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_category_id, RF046[bloom] -> tpcds_partitioned_parquet_snap.item_7.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -3429,7 +3452,7 @@ max-parallelism=90 segment-costs=[5878988, 847694218, 220] cpu-comparison-result
 |  |
 |  47:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF043[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF039[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF040[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_sold_date_sk, RF042[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk
+|     runtime filters: RF043[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF039[min_max] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_item_sk, RF040[bloom] -> tpcds_partitioned_parquet_snap.store_sales_2.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -3700,7 +3723,7 @@ max-parallelism=10 segment-costs=[21149891, 8568806] cpu-comparison-result=399 [
 |  in pipelines: 00(GETNEXT)
 |
 F00:PLAN FRAGMENT [RANDOM] hosts=10 instances=7 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=2.00MB mem-reservation=2.00MB thread-reservation=0 runtime-filters-memory=2.00MB
+Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 Per-Instance Resources: mem-estimate=18.03MB mem-reservation=8.00MB thread-reservation=1
 max-parallelism=7 segment-costs=[195386723]
 30:HASH JOIN [INNER JOIN, BROADCAST]
@@ -3802,12 +3825,12 @@ max-parallelism=7 segment-costs=[195386723]
 |  in pipelines: 00(GETNEXT), 111(OPEN)
 |
 |--F90:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=5.54MB mem-reservation=3.88MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  Per-Instance Resources: mem-estimate=4.54MB mem-reservation=2.88MB thread-reservation=1
 |  |  max-parallelism=10 segment-costs=[83840] cpu-comparison-result=374 [max(10 (self) vs 374 (sum children))]
 |  JOIN BUILD
 |  |  join-table-id=23 plan-id=24 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
-|  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0 cost=36000
 |  |
 |  113:EXCHANGE [BROADCAST]
@@ -3827,11 +3850,12 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  in pipelines: 111(GETNEXT), 01(OPEN)
 |  |
 |  |--F91:PLAN FRAGMENT [HASH(BRAND_ID,CLASS_ID,CATEGORY_ID)] hosts=10 instances=10 (adjusted from 120)
-|  |  |  Per-Instance Resources: mem-estimate=2.15MB mem-reservation=1.94MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=5.15MB mem-reservation=4.94MB thread-reservation=1 runtime-filters-memory=3.00MB
 |  |  |  max-parallelism=10 segment-costs=[42649]
 |  |  JOIN BUILD
 |  |  |  join-table-id=24 plan-id=25 cohort-id=08
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_brand_id, tpcds_partitioned_parquet_snap.item.i_category_id, tpcds_partitioned_parquet_snap.item.i_class_id
+|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF013[bloom] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF014[bloom] <- tpcds_partitioned_parquet_snap.item.i_class_id, RF015[min_max] <- tpcds_partitioned_parquet_snap.item.i_brand_id, RF016[min_max] <- tpcds_partitioned_parquet_snap.item.i_category_id, RF017[min_max] <- tpcds_partitioned_parquet_snap.item.i_class_id
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0 cost=36000
 |  |  |
 |  |  112:EXCHANGE [HASH(tpcds_partitioned_parquet_snap.item.i_brand_id,tpcds_partitioned_parquet_snap.item.i_class_id,tpcds_partitioned_parquet_snap.item.i_category_id)]
@@ -3924,7 +3948,6 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  |  in pipelines: 10(GETNEXT)
 |  |  |  |
 |  |  |  F09:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=6.00MB thread-reservation=1
 |  |  |  max-parallelism=1030 segment-costs=[10292257811, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  |  15:AGGREGATE [STREAMING]
@@ -3942,12 +3965,12 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  |  in pipelines: 10(GETNEXT), 13(OPEN)
 |  |  |  |
 |  |  |  |--F96:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  |  JOIN BUILD
 |  |  |  |  |  join-table-id=29 plan-id=30 cohort-id=08
 |  |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  |  |  runtime filters: RF026[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF027[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  |  |  runtime filters: RF027[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |  |
 |  |  |  |  105:EXCHANGE [BROADCAST]
@@ -3956,10 +3979,12 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  |  |  in pipelines: 13(GETNEXT)
 |  |  |  |  |
 |  |  |  |  F11:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  |  13:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_1.i_class_id
 |  |  |  |     stored statistics:
 |  |  |  |       table: rows=360.00K size=33.54MB
 |  |  |  |       columns: all
@@ -4007,7 +4032,7 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  |
 |  |  |  10:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |  |  |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|  |  |     runtime filters: RF027[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF026[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
+|  |  |     runtime filters: RF027[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |  |  |     stored statistics:
 |  |  |       table: rows=4.32G size=280.96GB
 |  |  |       partitions: 1831/1831 rows=4.32G
@@ -4029,7 +4054,6 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  in pipelines: 04(GETNEXT)
 |  |  |
 |  |  F05:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
-|  |  Per-Host Shared Resources: mem-estimate=1.00MB mem-reservation=1.00MB thread-reservation=0 runtime-filters-memory=1.00MB
 |  |  Per-Instance Resources: mem-estimate=33.50MB mem-reservation=9.00MB thread-reservation=1
 |  |  max-parallelism=1824 segment-costs=[20502959018, 23047987] cpu-comparison-result=120 [max(120 (self) vs 25 (sum children))]
 |  |  09:AGGREGATE [STREAMING]
@@ -4047,12 +4071,12 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  in pipelines: 04(GETNEXT), 07(OPEN)
 |  |  |
 |  |  |--F94:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  |  Per-Instance Resources: mem-estimate=414.57MB mem-reservation=409.00MB thread-reservation=1 runtime-filters-memory=1.00MB
+|  |  |  |  Per-Instance Resources: mem-estimate=413.57MB mem-reservation=408.00MB thread-reservation=1
 |  |  |  |  max-parallelism=10 segment-costs=[838440]
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=27 plan-id=28 cohort-id=08
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  |  runtime filters: RF022[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF023[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  |  runtime filters: RF023[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  |  mem-estimate=408.00MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=360000
 |  |  |  |
 |  |  |  101:EXCHANGE [BROADCAST]
@@ -4061,10 +4085,12 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  |  in pipelines: 07(GETNEXT)
 |  |  |  |
 |  |  |  F07:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  |  max-parallelism=4 segment-costs=[106272]
 |  |  |  07:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_0.i_class_id
 |  |  |     stored statistics:
 |  |  |       table: rows=360.00K size=33.54MB
 |  |  |       columns: all
@@ -4112,7 +4138,7 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |
 |  |  04:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF023[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF022[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
+|  |     runtime filters: RF023[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -4165,10 +4191,12 @@ max-parallelism=7 segment-costs=[195386723]
 |  |  |  in pipelines: 20(GETNEXT)
 |  |  |
 |  |  F03:PLAN FRAGMENT [RANDOM] hosts=4 instances=4
+|  |  Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
 |  |  Per-Instance Resources: mem-estimate=16.08MB mem-reservation=512.00KB thread-reservation=1
 |  |  max-parallelism=4 segment-costs=[106272]
 |  |  20:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
+|  |     runtime filters: RF015[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF016[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF017[min_max] -> tpcds_partitioned_parquet_snap.item_2.i_class_id, RF012[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_brand_id, RF013[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_category_id, RF014[bloom] -> tpcds_partitioned_parquet_snap.item_2.i_class_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -4228,7 +4256,7 @@ max-parallelism=7 segment-costs=[195386723]
 |
 00:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
-   runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk
+   runtime filters: RF011[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF007[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q54.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q54.test
index 79fd979cb..9d8963103 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q54.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q54.test
@@ -56,10 +56,10 @@ with my_customers as (
 
 # end query 54 in stream 0 using template query54.tpl
 ---- PLAN
-Max Per-Host Resource Reservation: Memory=142.19MB Threads=1
-Per-Host Resource Estimates: Memory=1.72GB
+Max Per-Host Resource Reservation: Memory=160.19MB Threads=1
+Per-Host Resource Estimates: Memory=1.74GB
 F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
-|  Per-Instance Resources: mem-estimate=1.72GB mem-reservation=142.19MB thread-reservation=1 runtime-filters-memory=20.00MB
+|  Per-Instance Resources: mem-estimate=1.74GB mem-reservation=160.19MB thread-reservation=1 runtime-filters-memory=38.00MB
 |  max-parallelism=1 segment-costs=[9083654006, 17041, 0, 17041, 0, 2758640848, 8524965, 8231261, 300]
 PLAN-ROOT SINK
 |  output exprs: divide(sum(tpcds_partitioned_parquet_snap.store_sales.ss_ext_sales_price), 50), count(), multiply(CAST(divide(sum(tpcds_partitioned_parquet_snap.store_sales.ss_ext_sales_price), 50) AS BIGINT), CAST(50 AS BIGINT))
@@ -221,6 +221,7 @@ PLAN-ROOT SINK
 |  09:HASH JOIN [INNER JOIN]
 |  |  hash predicates: CUSTOMER_SK = tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF007[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  mem-estimate=996.88MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  |  tuple-ids=8,9,11,2 row-size=74B cardinality=30.00M cost=1697567785
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 01(OPEN)
@@ -239,6 +240,7 @@ PLAN-ROOT SINK
 |  08:HASH JOIN [INNER JOIN]
 |  |  hash predicates: SOLD_DATE_SK = tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=8,9,11 row-size=66B cardinality=6.48G cost=2836316218
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 07(OPEN)
@@ -259,6 +261,7 @@ PLAN-ROOT SINK
 |  06:HASH JOIN [INNER JOIN]
 |  |  hash predicates: ITEM_SK = tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  fk/pk conjuncts: assumed fk/pk
+|  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=8,9 row-size=54B cardinality=6.48G cost=2836317256
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 05(OPEN)
@@ -283,6 +286,7 @@ PLAN-ROOT SINK
 |  |
 |  |--04:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|  |     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF011[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -294,6 +298,7 @@ PLAN-ROOT SINK
 |  |
 |  03:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_bill_customer_sk, RF011[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_bill_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -306,7 +311,7 @@ PLAN-ROOT SINK
 00:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
    predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk)
-   runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk
+   runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -317,8 +322,8 @@ PLAN-ROOT SINK
    tuple-ids=0 row-size=12B cardinality=863.99M cost=1735762980
    in pipelines: 00(GETNEXT)
 ---- DISTRIBUTEDPLAN
-Max Per-Host Resource Reservation: Memory=1.76GB Threads=50
-Per-Host Resource Estimates: Memory=3.54GB
+Max Per-Host Resource Reservation: Memory=1.79GB Threads=50
+Per-Host Resource Estimates: Memory=3.58GB
 F19:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.02MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[327] cpu-comparison-result=151 [max(1 (self) vs 151 (sum children))]
@@ -675,6 +680,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT)
 |  |
 |  F03:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=18.00MB mem-reservation=18.00MB thread-reservation=0 runtime-filters-memory=18.00MB
 |  Per-Instance Resources: mem-estimate=26.94MB mem-reservation=6.00MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[9050068071, 30912000] cpu-comparison-result=120 [max(120 (self) vs 45 (sum children))]
 |  10:AGGREGATE [STREAMING]
@@ -692,11 +698,12 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 01(OPEN)
 |  |
 |  |--F26:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=1007.00MB mem-reservation=408.00MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=1023.00MB mem-reservation=424.00MB thread-reservation=1 runtime-filters-memory=16.00MB
 |  |  |  max-parallelism=10 segment-costs=[69869990]
 |  |  JOIN BUILD
 |  |  |  join-table-id=06 plan-id=07 cohort-id=04
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF007[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  |  mem-estimate=996.88MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=30000000
 |  |  |
 |  |  31:EXCHANGE [BROADCAST]
@@ -728,11 +735,12 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 07(OPEN)
 |  |
 |  |--F27:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.27MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.27MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[248]
 |  |  JOIN BUILD
 |  |  |  join-table-id=07 plan-id=08 cohort-id=04
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=108
 |  |  |
 |  |  30:EXCHANGE [BROADCAST]
@@ -765,11 +773,12 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 05(OPEN)
 |  |
 |  |--F28:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.47MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.47MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[2666]
 |  |  JOIN BUILD
 |  |  |  join-table-id=08 plan-id=09 cohort-id=04
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=1146
 |  |  |
 |  |  29:EXCHANGE [BROADCAST]
@@ -800,6 +809,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |
 |  |--04:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|  |     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF011[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -811,6 +821,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |
 |  03:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_bill_customer_sk, RF011[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_bill_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -823,7 +834,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 00:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
    predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk)
-   runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk
+   runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
@@ -834,8 +845,8 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
    tuple-ids=0 row-size=12B cardinality=863.99M cost=1735762980
    in pipelines: 00(GETNEXT)
 ---- PARALLELPLANS
-Max Per-Host Resource Reservation: Memory=1.76GB Threads=50
-Per-Host Resource Estimates: Memory=3.54GB
+Max Per-Host Resource Reservation: Memory=1.79GB Threads=50
+Per-Host Resource Estimates: Memory=3.58GB
 F19:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=4.02MB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[327] cpu-comparison-result=151 [max(1 (self) vs 151 (sum children))]
@@ -1192,6 +1203,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT)
 |  |
 |  F03:PLAN FRAGMENT [RANDOM] hosts=10 instances=120
+|  Per-Host Shared Resources: mem-estimate=18.00MB mem-reservation=18.00MB thread-reservation=0 runtime-filters-memory=18.00MB
 |  Per-Instance Resources: mem-estimate=26.94MB mem-reservation=6.00MB thread-reservation=1
 |  max-parallelism=120 segment-costs=[9050068071, 30912000] cpu-comparison-result=120 [max(120 (self) vs 45 (sum children))]
 |  10:AGGREGATE [STREAMING]
@@ -1209,11 +1221,12 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 01(OPEN)
 |  |
 |  |--F26:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=1007.00MB mem-reservation=408.00MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=1023.00MB mem-reservation=424.00MB thread-reservation=1 runtime-filters-memory=16.00MB
 |  |  |  max-parallelism=10 segment-costs=[69869990]
 |  |  JOIN BUILD
 |  |  |  join-table-id=06 plan-id=07 cohort-id=04
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.customer.c_customer_sk
+|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk, RF007[min_max] <- tpcds_partitioned_parquet_snap.customer.c_customer_sk
 |  |  |  mem-estimate=996.88MB mem-reservation=408.00MB spill-buffer=2.00MB thread-reservation=0 cost=30000000
 |  |  |
 |  |  31:EXCHANGE [BROADCAST]
@@ -1245,11 +1258,12 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 07(OPEN)
 |  |
 |  |--F27:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.27MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.27MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[248]
 |  |  JOIN BUILD
 |  |  |  join-table-id=07 plan-id=08 cohort-id=04
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=108
 |  |  |
 |  |  30:EXCHANGE [BROADCAST]
@@ -1282,11 +1296,12 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |  in pipelines: 03(GETNEXT), 04(GETNEXT), 05(OPEN)
 |  |
 |  |--F28:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  |  Per-Instance Resources: mem-estimate=23.47MB mem-reservation=23.25MB thread-reservation=1
+|  |  |  Per-Instance Resources: mem-estimate=24.47MB mem-reservation=24.25MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  |  max-parallelism=10 segment-costs=[2666]
 |  |  JOIN BUILD
 |  |  |  join-table-id=08 plan-id=09 cohort-id=04
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF011[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=1146
 |  |  |
 |  |  29:EXCHANGE [BROADCAST]
@@ -1317,6 +1332,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |
 |  |--04:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
+|  |     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF011[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_bill_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -1328,6 +1344,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 |  |
 |  03:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
+|     runtime filters: RF007[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_bill_customer_sk, RF011[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_bill_customer_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -1340,7 +1357,7 @@ max-parallelism=280 segment-costs=[2720923444, 40528948] cpu-comparison-result=1
 00:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=389.90GB
    predicates: is_not_null_pred(tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk)
-   runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk
+   runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_customer_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
    stored statistics:
      table: rows=8.64G size=389.90GB
      partitions: 1824/1824 rows=8.64G
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q71.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q71.test
index f1d70bad1..539ce1af3 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q71.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q71.test
@@ -40,10 +40,10 @@ select i_brand_id brand_id, i_brand brand,t_hour,t_minute,
 
 # end query 71 in stream 0 using template query71.tpl
 ---- PLAN
-Max Per-Host Resource Reservation: Memory=52.25MB Threads=1
+Max Per-Host Resource Reservation: Memory=54.25MB Threads=1
 Per-Host Resource Estimates: Memory=34.65GB
 F00:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
-|  Per-Instance Resources: mem-estimate=34.65GB mem-reservation=52.25MB thread-reservation=1 runtime-filters-memory=3.00MB
+|  Per-Instance Resources: mem-estimate=34.65GB mem-reservation=54.25MB thread-reservation=1 runtime-filters-memory=5.00MB
 |  max-parallelism=1 segment-costs=[5013997946, 1477452751, 2592000000]
 PLAN-ROOT SINK
 |  output exprs: tpcds_partitioned_parquet_snap.item.i_brand_id, tpcds_partitioned_parquet_snap.item.i_brand, tpcds_partitioned_parquet_snap.time_dim.t_hour, tpcds_partitioned_parquet_snap.time_dim.t_minute, sum(EXT_PRICE)
@@ -65,6 +65,7 @@ PLAN-ROOT SINK
 14:HASH JOIN [INNER JOIN]
 |  hash predicates: TIME_SK = tpcds_partitioned_parquet_snap.time_dim.t_time_sk
 |  fk/pk conjuncts: assumed fk/pk
+|  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.time_dim.t_time_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.time_dim.t_time_sk
 |  mem-estimate=2.88MB mem-reservation=2.88MB spill-buffer=128.00KB thread-reservation=0
 |  tuple-ids=13,14,16 row-size=83B cardinality=894.28M cost=391450496
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT), 13(OPEN)
@@ -84,6 +85,7 @@ PLAN-ROOT SINK
 12:HASH JOIN [INNER JOIN]
 |  hash predicates: SOLD_ITEM_SK = tpcds_partitioned_parquet_snap.item.i_item_sk
 |  fk/pk conjuncts: assumed fk/pk
+|  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  tuple-ids=13,14 row-size=52B cardinality=894.28M cost=391431790
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT), 11(OPEN)
@@ -130,7 +132,7 @@ PLAN-ROOT SINK
 |  |
 |  08:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -168,7 +170,7 @@ PLAN-ROOT SINK
 |  |
 |  05:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -201,7 +203,7 @@ PLAN-ROOT SINK
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
-   runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
@@ -212,7 +214,7 @@ PLAN-ROOT SINK
    in pipelines: 02(GETNEXT)
 ---- DISTRIBUTEDPLAN
 Max Per-Host Resource Reservation: Memory=1.12GB Threads=34
-Per-Host Resource Estimates: Memory=14.59GB
+Per-Host Resource Estimates: Memory=14.60GB
 F11:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=1.28GB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[2781329205] cpu-comparison-result=120 [max(1 (self) vs 120 (sum children))]
@@ -248,7 +250,7 @@ max-parallelism=390 segment-costs=[3895633958, 1477452751, 925691694] cpu-compar
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT)
 |
 F07:PLAN FRAGMENT [RANDOM] hosts=10 instances=109 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
+Per-Host Shared Resources: mem-estimate=5.00MB mem-reservation=5.00MB thread-reservation=0 runtime-filters-memory=5.00MB
 Per-Instance Resources: mem-estimate=444.18MB mem-reservation=42.00MB thread-reservation=1
 max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result=109 [max(109 (self) vs 58 (sum children))]
 15:AGGREGATE [STREAMING]
@@ -267,11 +269,12 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT), 13(OPEN)
 |
 |--F12:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=32.32MB mem-reservation=31.62MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=33.32MB mem-reservation=32.62MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[52013]
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.time_dim.t_time_sk
+|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.time_dim.t_time_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.time_dim.t_time_sk
 |  |  mem-estimate=31.62MB mem-reservation=31.62MB spill-buffer=128.00KB thread-reservation=0 cost=22333
 |  |
 |  21:EXCHANGE [BROADCAST]
@@ -303,11 +306,12 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT), 11(OPEN)
 |
 |--F13:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=21.62MB mem-reservation=21.31MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=22.62MB mem-reservation=22.31MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[8447]
 |  JOIN BUILD
 |  |  join-table-id=01 plan-id=02 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=21.31MB mem-reservation=21.31MB spill-buffer=64.00KB thread-reservation=0 cost=3627
 |  |
 |  20:EXCHANGE [BROADCAST]
@@ -377,7 +381,7 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  |
 |  08:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -432,7 +436,7 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  |
 |  05:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -482,7 +486,7 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
-   runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
@@ -493,7 +497,7 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
    in pipelines: 02(GETNEXT)
 ---- PARALLELPLANS
 Max Per-Host Resource Reservation: Memory=1.12GB Threads=34
-Per-Host Resource Estimates: Memory=14.59GB
+Per-Host Resource Estimates: Memory=14.60GB
 F11:PLAN FRAGMENT [UNPARTITIONED] hosts=1 instances=1
 |  Per-Instance Resources: mem-estimate=1.28GB mem-reservation=4.00MB thread-reservation=1
 |  max-parallelism=1 segment-costs=[2781329205] cpu-comparison-result=120 [max(1 (self) vs 120 (sum children))]
@@ -529,7 +533,7 @@ max-parallelism=390 segment-costs=[3895633958, 1477452751, 925691694] cpu-compar
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT)
 |
 F07:PLAN FRAGMENT [RANDOM] hosts=10 instances=109 (adjusted from 120)
-Per-Host Shared Resources: mem-estimate=3.00MB mem-reservation=3.00MB thread-reservation=0 runtime-filters-memory=3.00MB
+Per-Host Shared Resources: mem-estimate=5.00MB mem-reservation=5.00MB thread-reservation=0 runtime-filters-memory=5.00MB
 Per-Instance Resources: mem-estimate=444.18MB mem-reservation=42.00MB thread-reservation=1
 max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result=109 [max(109 (self) vs 58 (sum children))]
 15:AGGREGATE [STREAMING]
@@ -548,11 +552,12 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT), 13(OPEN)
 |
 |--F12:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=32.32MB mem-reservation=31.62MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=33.32MB mem-reservation=32.62MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[52013]
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.time_dim.t_time_sk
+|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.time_dim.t_time_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.time_dim.t_time_sk
 |  |  mem-estimate=31.62MB mem-reservation=31.62MB spill-buffer=128.00KB thread-reservation=0 cost=22333
 |  |
 |  21:EXCHANGE [BROADCAST]
@@ -584,11 +589,12 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  in pipelines: 02(GETNEXT), 05(GETNEXT), 08(GETNEXT), 11(OPEN)
 |
 |--F13:PLAN FRAGMENT [RANDOM] hosts=10 instances=10
-|  |  Per-Instance Resources: mem-estimate=21.62MB mem-reservation=21.31MB thread-reservation=1
+|  |  Per-Instance Resources: mem-estimate=22.62MB mem-reservation=22.31MB thread-reservation=1 runtime-filters-memory=1.00MB
 |  |  max-parallelism=10 segment-costs=[8447]
 |  JOIN BUILD
 |  |  join-table-id=01 plan-id=02 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF003[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=21.31MB mem-reservation=21.31MB spill-buffer=64.00KB thread-reservation=0 cost=3627
 |  |
 |  20:EXCHANGE [BROADCAST]
@@ -658,7 +664,7 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  |
 |  08:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -713,7 +719,7 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |  |
 |  05:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+|     runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -763,7 +769,7 @@ max-parallelism=109 segment-costs=[6686961141, 3668617212] cpu-comparison-result
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
    HDFS partitions=1824/1824 files=1824 size=145.75GB
-   runtime filters: RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
+   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_time_sk, RF003[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_time_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_sold_date_sk
    stored statistics:
      table: rows=2.16G size=145.75GB
      partitions: 1824/1824 rows=2.16G
diff --git a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q75.test b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q75.test
index e4ba68cd9..5ebffc162 100644
--- a/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q75.test
+++ b/testdata/workloads/functional-planner/queries/PlannerTest/calcite_tpcds/tpcds-q75.test
@@ -89,6 +89,7 @@ PLAN-ROOT SINK
 |  hash predicates: I_BRAND_ID = I_BRAND_ID, I_CATEGORY_ID = I_CATEGORY_ID, I_CLASS_ID = I_CLASS_ID, I_MANUFACT_ID = I_MANUFACT_ID
 |  fk/pk conjuncts: assumed fk/pk
 |  other join predicates: divide(CAST(sum(SALES_CNT) AS DECIMAL(17,2)), CAST(sum(SALES_CNT) AS DECIMAL(17,2))) < CAST(0.9 AS DECIMAL(2,1))
+|  runtime filters: RF004[min_max] <- I_BRAND_ID, RF005[min_max] <- I_CATEGORY_ID, RF006[min_max] <- I_CLASS_ID, RF007[min_max] <- I_MANUFACT_ID
 |  mem-estimate=17.47GB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0
 |  tuple-ids=28,57 row-size=80B cardinality=307.98M cost=442777099
 |  in pipelines: 25(GETNEXT), 51(OPEN)
@@ -115,7 +116,7 @@ PLAN-ROOT SINK
 |  |--49:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk = tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk = tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  |  runtime filters: RF028[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF029[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  |  |  tuple-ids=47,49,51N,53 row-size=90B cardinality=44.04M cost=63261446
 |  |  |  in pipelines: 43(GETNEXT), 48(OPEN)
@@ -175,7 +176,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  43:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
+|  |     runtime filters: RF029[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF028[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -199,7 +200,7 @@ PLAN-ROOT SINK
 |  |--41:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk = tpcds_partitioned_parquet_snap.item_3.i_item_sk
 |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk = tpcds_partitioned_parquet_snap.item_3.i_item_sk
-|  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk
+|  |  |  runtime filters: RF024[bloom] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk, RF025[min_max] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk
 |  |  |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  |  |  tuple-ids=37,39,41N,43 row-size=90B cardinality=176.18M cost=252939892
 |  |  |  in pipelines: 35(GETNEXT), 40(OPEN)
@@ -240,7 +241,7 @@ PLAN-ROOT SINK
 |  |  37:HASH JOIN [INNER JOIN]
 |  |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
 |  |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
-|  |  |  runtime filters: RF018[bloom] <- tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
+|  |  |  runtime filters: RF026[bloom] <- tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
 |  |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  |  tuple-ids=37,39 row-size=32B cardinality=861.52M(filtered from 1.77G) cost=541130352
 |  |  |  in pipelines: 35(GETNEXT), 36(OPEN)
@@ -260,7 +261,7 @@ PLAN-ROOT SINK
 |  |  |
 |  |  35:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF018[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk
+|  |     runtime filters: RF025[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF024[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF026[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -273,7 +274,7 @@ PLAN-ROOT SINK
 |  34:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk = tpcds_partitioned_parquet_snap.item_2.i_item_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk = tpcds_partitioned_parquet_snap.item_2.i_item_sk
-|  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk
+|  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk
 |  |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  |  tuple-ids=29,31,33N,35 row-size=90B cardinality=87.75M cost=126430110
 |  |  in pipelines: 28(GETNEXT), 33(OPEN)
@@ -314,7 +315,7 @@ PLAN-ROOT SINK
 |  30:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
-|  |  runtime filters: RF014[bloom] <- tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
+|  |  runtime filters: RF022[bloom] <- tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=29,31 row-size=32B cardinality=430.77M(filtered from 880.06M) cost=269960287
 |  |  in pipelines: 28(GETNEXT), 29(OPEN)
@@ -334,7 +335,7 @@ PLAN-ROOT SINK
 |  |
 |  28:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF014[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
+|     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF022[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -366,7 +367,7 @@ PLAN-ROOT SINK
 |--23:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.web_sales.ws_item_sk = tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.web_sales.ws_item_sk = tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  |  tuple-ids=18,20,22N,24 row-size=90B cardinality=44.04M cost=63261446
 |  |  in pipelines: 17(GETNEXT), 22(OPEN)
@@ -374,6 +375,7 @@ PLAN-ROOT SINK
 |  |--22:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
 |  |     predicates: tpcds_partitioned_parquet_snap.item_1.i_category = 'Sports'
+|  |     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_manufact_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -426,7 +428,7 @@ PLAN-ROOT SINK
 |  |
 |  17:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
+|     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -450,7 +452,7 @@ PLAN-ROOT SINK
 |--15:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales.ss_item_sk = tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales.ss_item_sk = tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  |  tuple-ids=8,10,12N,14 row-size=90B cardinality=176.18M cost=252939892
 |  |  in pipelines: 09(GETNEXT), 14(OPEN)
@@ -458,6 +460,7 @@ PLAN-ROOT SINK
 |  |--14:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
 |  |     predicates: tpcds_partitioned_parquet_snap.item_0.i_category = 'Sports'
+|  |     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_manufact_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -491,7 +494,7 @@ PLAN-ROOT SINK
 |  11:HASH JOIN [INNER JOIN]
 |  |  hash predicates: tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
-|  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  |  runtime filters: RF014[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  |  tuple-ids=8,10 row-size=32B cardinality=861.52M(filtered from 1.77G) cost=541130352
 |  |  in pipelines: 09(GETNEXT), 10(OPEN)
@@ -511,7 +514,7 @@ PLAN-ROOT SINK
 |  |
 |  09:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF014[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -524,7 +527,7 @@ PLAN-ROOT SINK
 08:HASH JOIN [INNER JOIN]
 |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk = tpcds_partitioned_parquet_snap.item.i_item_sk
 |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk = tpcds_partitioned_parquet_snap.item.i_item_sk
-|  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  mem-estimate=4.75MB mem-reservation=4.75MB spill-buffer=256.00KB thread-reservation=0
 |  tuple-ids=0,2,4N,6 row-size=90B cardinality=87.75M cost=126430110
 |  in pipelines: 02(GETNEXT), 07(OPEN)
@@ -532,6 +535,7 @@ PLAN-ROOT SINK
 |--07:SCAN HDFS [tpcds_partitioned_parquet_snap.item]
 |     HDFS partitions=1/1 files=1 size=33.54MB
 |     predicates: tpcds_partitioned_parquet_snap.item.i_category = 'Sports'
+|     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item.i_manufact_id
 |     stored statistics:
 |       table: rows=360.00K size=33.54MB
 |       columns: all
@@ -565,7 +569,7 @@ PLAN-ROOT SINK
 04:HASH JOIN [INNER JOIN]
 |  hash predicates: tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  fk/pk conjuncts: tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk = tpcds_partitioned_parquet_snap.date_dim.d_date_sk
-|  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  mem-estimate=1.94MB mem-reservation=1.94MB spill-buffer=64.00KB thread-reservation=0
 |  tuple-ids=0,2 row-size=32B cardinality=430.77M(filtered from 880.06M) cost=269960287
 |  in pipelines: 02(GETNEXT), 03(OPEN)
@@ -585,7 +589,7 @@ PLAN-ROOT SINK
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales]
    HDFS partitions=1831/1831 files=1831 size=280.96GB
-   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+   runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
    stored statistics:
      table: rows=4.32G size=280.96GB
      partitions: 1831/1831 rows=4.32G
@@ -635,6 +639,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: I_BRAND_ID, I_CATEGORY_ID, I_CLASS_ID, I_MANUFACT_ID
+|  |  runtime filters: RF004[min_max] <- I_BRAND_ID, RF005[min_max] <- I_CATEGORY_ID, RF006[min_max] <- I_CLASS_ID, RF007[min_max] <- I_MANUFACT_ID
 |  |  mem-estimate=149.10MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0 cost=307976003
 |  |
 |  83:AGGREGATE [FINALIZE]
@@ -700,7 +705,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=01 plan-id=02 cohort-id=02
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  |  |  runtime filters: RF028[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF029[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |  |
 |  |  |  79:EXCHANGE [BROADCAST]
@@ -800,7 +805,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |
 |  |  43:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
+|  |     runtime filters: RF029[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF028[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -850,7 +855,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=07 plan-id=08 cohort-id=02
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_3.i_item_sk
-|  |  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk
+|  |  |  |  runtime filters: RF024[bloom] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk, RF025[min_max] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk
 |  |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |  |
 |  |  |  74:EXCHANGE [BROADCAST]
@@ -925,7 +930,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=09 plan-id=10 cohort-id=02
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
-|  |  |  |  runtime filters: RF018[bloom] <- tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
+|  |  |  |  runtime filters: RF026[bloom] <- tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
 |  |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |  |  |
 |  |  |  72:EXCHANGE [BROADCAST]
@@ -951,7 +956,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |
 |  |  35:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF018[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk
+|  |     runtime filters: RF025[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF024[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF026[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -975,7 +980,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  JOIN BUILD
 |  |  |  join-table-id=04 plan-id=05 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_2.i_item_sk
-|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk
+|  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |
 |  |  71:EXCHANGE [BROADCAST]
@@ -1050,7 +1055,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  JOIN BUILD
 |  |  |  join-table-id=06 plan-id=07 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
-|  |  |  runtime filters: RF014[bloom] <- tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
+|  |  |  runtime filters: RF022[bloom] <- tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |  |
 |  |  69:EXCHANGE [BROADCAST]
@@ -1076,7 +1081,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |
 |  28:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF014[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
+|     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF022[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -1149,7 +1154,7 @@ max-parallelism=120 segment-costs=[1621201806, 2903173906, 714011565] cpu-compar
 |  |  JOIN BUILD
 |  |  |  join-table-id=10 plan-id=11 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |
 |  |  64:EXCHANGE [BROADCAST]
@@ -1163,6 +1168,7 @@ max-parallelism=120 segment-costs=[1621201806, 2903173906, 714011565] cpu-compar
 |  |  22:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
 |  |     predicates: tpcds_partitioned_parquet_snap.item_1.i_category = 'Sports'
+|  |     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_manufact_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -1249,7 +1255,7 @@ max-parallelism=120 segment-costs=[1621201806, 2903173906, 714011565] cpu-compar
 |  |
 |  17:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
+|     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -1299,7 +1305,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |  |  JOIN BUILD
 |  |  |  join-table-id=16 plan-id=17 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |
 |  |  59:EXCHANGE [BROADCAST]
@@ -1313,6 +1319,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |  |  14:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
 |  |     predicates: tpcds_partitioned_parquet_snap.item_0.i_category = 'Sports'
+|  |     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_manufact_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -1374,7 +1381,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |  |  JOIN BUILD
 |  |  |  join-table-id=18 plan-id=19 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
-|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  |  |  runtime filters: RF014[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |  |
 |  |  57:EXCHANGE [BROADCAST]
@@ -1400,7 +1407,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |  |
 |  09:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF014[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -1424,7 +1431,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |  JOIN BUILD
 |  |  join-table-id=13 plan-id=14 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
-|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |
 |  56:EXCHANGE [BROADCAST]
@@ -1438,6 +1445,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |  07:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |     HDFS partitions=1/1 files=1 size=33.54MB
 |     predicates: tpcds_partitioned_parquet_snap.item.i_category = 'Sports'
+|     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item.i_manufact_id
 |     stored statistics:
 |       table: rows=360.00K size=33.54MB
 |       columns: all
@@ -1499,7 +1507,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |  JOIN BUILD
 |  |  join-table-id=15 plan-id=16 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
-|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |
 |  54:EXCHANGE [BROADCAST]
@@ -1525,7 +1533,7 @@ max-parallelism=120 segment-costs=[4504336785, 611899758] cpu-comparison-result=
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
    HDFS partitions=1831/1831 files=1831 size=280.96GB
-   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+   runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
    stored statistics:
      table: rows=4.32G size=280.96GB
      partitions: 1831/1831 rows=4.32G
@@ -1575,6 +1583,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  JOIN BUILD
 |  |  join-table-id=00 plan-id=01 cohort-id=01
 |  |  build expressions: I_BRAND_ID, I_CATEGORY_ID, I_CLASS_ID, I_MANUFACT_ID
+|  |  runtime filters: RF004[min_max] <- I_BRAND_ID, RF005[min_max] <- I_CATEGORY_ID, RF006[min_max] <- I_CLASS_ID, RF007[min_max] <- I_MANUFACT_ID
 |  |  mem-estimate=149.10MB mem-reservation=34.00MB spill-buffer=2.00MB thread-reservation=0 cost=307976003
 |  |
 |  89:AGGREGATE [FINALIZE]
@@ -1639,7 +1648,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=01 plan-id=02 cohort-id=02
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_4.i_item_sk
-|  |  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
+|  |  |  |  runtime filters: RF028[bloom] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk, RF029[min_max] <- tpcds_partitioned_parquet_snap.item_4.i_item_sk
 |  |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |  |
 |  |  |  85:EXCHANGE [BROADCAST]
@@ -1748,7 +1757,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |
 |  |  43:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|  |     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
+|  |     runtime filters: RF029[min_max] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk, RF028[bloom] -> tpcds_partitioned_parquet_snap.web_sales_0.ws_item_sk
 |  |     stored statistics:
 |  |       table: rows=2.16G size=145.75GB
 |  |       partitions: 1824/1824 rows=2.16G
@@ -1797,7 +1806,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=05 plan-id=06 cohort-id=02
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_3.i_item_sk
-|  |  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk
+|  |  |  |  runtime filters: RF024[bloom] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk, RF025[min_max] <- tpcds_partitioned_parquet_snap.item_3.i_item_sk
 |  |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |  |
 |  |  |  79:EXCHANGE [BROADCAST]
@@ -1881,7 +1890,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |  JOIN BUILD
 |  |  |  |  join-table-id=08 plan-id=09 cohort-id=02
 |  |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
-|  |  |  |  runtime filters: RF018[bloom] <- tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
+|  |  |  |  runtime filters: RF026[bloom] <- tpcds_partitioned_parquet_snap.date_dim_3.d_date_sk
 |  |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |  |  |
 |  |  |  76:EXCHANGE [BROADCAST]
@@ -1907,7 +1916,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  |
 |  |  35:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |  |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|  |     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF018[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk
+|  |     runtime filters: RF025[min_max] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF024[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_item_sk, RF026[bloom] -> tpcds_partitioned_parquet_snap.store_sales_0.ss_sold_date_sk
 |  |     stored statistics:
 |  |       table: rows=8.64G size=389.90GB
 |  |       partitions: 1824/1824 rows=8.64G
@@ -1931,7 +1940,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  JOIN BUILD
 |  |  |  join-table-id=03 plan-id=04 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_2.i_item_sk
-|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk
+|  |  |  runtime filters: RF020[bloom] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk, RF021[min_max] <- tpcds_partitioned_parquet_snap.item_2.i_item_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |
 |  |  75:EXCHANGE [BROADCAST]
@@ -2015,7 +2024,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |  JOIN BUILD
 |  |  |  join-table-id=07 plan-id=08 cohort-id=02
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
-|  |  |  runtime filters: RF014[bloom] <- tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
+|  |  |  runtime filters: RF022[bloom] <- tpcds_partitioned_parquet_snap.date_dim_2.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |  |
 |  |  72:EXCHANGE [BROADCAST]
@@ -2041,7 +2050,7 @@ max-parallelism=510 segment-costs=[1930301193, 5031055712, 199] cpu-comparison-r
 |  |
 |  28:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
 |     HDFS partitions=1831/1831 files=1831 size=280.96GB
-|     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF014[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
+|     runtime filters: RF021[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF020[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_item_sk, RF022[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales_0.cs_sold_date_sk
 |     stored statistics:
 |       table: rows=4.32G size=280.96GB
 |       partitions: 1831/1831 rows=4.32G
@@ -2113,7 +2122,7 @@ max-parallelism=120 segment-costs=[1621201806, 2084965850, 714011565] cpu-compar
 |  |  JOIN BUILD
 |  |  |  join-table-id=10 plan-id=11 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_1.i_item_sk
-|  |  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
+|  |  |  runtime filters: RF016[bloom] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk, RF017[min_max] <- tpcds_partitioned_parquet_snap.item_1.i_item_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |
 |  |  67:EXCHANGE [BROADCAST]
@@ -2127,6 +2136,7 @@ max-parallelism=120 segment-costs=[1621201806, 2084965850, 714011565] cpu-compar
 |  |  22:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
 |  |     predicates: tpcds_partitioned_parquet_snap.item_1.i_category = 'Sports'
+|  |     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item_1.i_manufact_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -2222,7 +2232,7 @@ max-parallelism=120 segment-costs=[1621201806, 2084965850, 714011565] cpu-compar
 |  |
 |  17:SCAN HDFS [tpcds_partitioned_parquet_snap.web_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=145.75GB
-|     runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
+|     runtime filters: RF017[min_max] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk, RF016[bloom] -> tpcds_partitioned_parquet_snap.web_sales.ws_item_sk
 |     stored statistics:
 |       table: rows=2.16G size=145.75GB
 |       partitions: 1824/1824 rows=2.16G
@@ -2271,7 +2281,7 @@ max-parallelism=120 segment-costs=[3159838554, 611899758] cpu-comparison-result=
 |  |  JOIN BUILD
 |  |  |  join-table-id=14 plan-id=15 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.item_0.i_item_sk
-|  |  |  runtime filters: RF004[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF005[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
+|  |  |  runtime filters: RF012[bloom] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk, RF013[min_max] <- tpcds_partitioned_parquet_snap.item_0.i_item_sk
 |  |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |  |
 |  |  61:EXCHANGE [BROADCAST]
@@ -2285,6 +2295,7 @@ max-parallelism=120 segment-costs=[3159838554, 611899758] cpu-comparison-result=
 |  |  14:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |  |     HDFS partitions=1/1 files=1 size=33.54MB
 |  |     predicates: tpcds_partitioned_parquet_snap.item_0.i_category = 'Sports'
+|  |     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item_0.i_manufact_id
 |  |     stored statistics:
 |  |       table: rows=360.00K size=33.54MB
 |  |       columns: all
@@ -2355,7 +2366,7 @@ max-parallelism=120 segment-costs=[3159838554, 611899758] cpu-comparison-result=
 |  |  JOIN BUILD
 |  |  |  join-table-id=17 plan-id=18 cohort-id=01
 |  |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
-|  |  |  runtime filters: RF006[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
+|  |  |  runtime filters: RF014[bloom] <- tpcds_partitioned_parquet_snap.date_dim_0.d_date_sk
 |  |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |  |
 |  |  58:EXCHANGE [BROADCAST]
@@ -2381,7 +2392,7 @@ max-parallelism=120 segment-costs=[3159838554, 611899758] cpu-comparison-result=
 |  |
 |  09:SCAN HDFS [tpcds_partitioned_parquet_snap.store_sales, RANDOM]
 |     HDFS partitions=1824/1824 files=1824 size=389.90GB
-|     runtime filters: RF005[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF004[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF006[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
+|     runtime filters: RF013[min_max] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF012[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_item_sk, RF014[bloom] -> tpcds_partitioned_parquet_snap.store_sales.ss_sold_date_sk
 |     stored statistics:
 |       table: rows=8.64G size=389.90GB
 |       partitions: 1824/1824 rows=8.64G
@@ -2405,7 +2416,7 @@ max-parallelism=120 segment-costs=[3159838554, 611899758] cpu-comparison-result=
 |  JOIN BUILD
 |  |  join-table-id=12 plan-id=13 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.item.i_item_sk
-|  |  runtime filters: RF000[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF001[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
+|  |  runtime filters: RF008[bloom] <- tpcds_partitioned_parquet_snap.item.i_item_sk, RF009[min_max] <- tpcds_partitioned_parquet_snap.item.i_item_sk
 |  |  mem-estimate=57.00MB mem-reservation=57.00MB spill-buffer=256.00KB thread-reservation=0 cost=35915
 |  |
 |  57:EXCHANGE [BROADCAST]
@@ -2419,6 +2430,7 @@ max-parallelism=120 segment-costs=[3159838554, 611899758] cpu-comparison-result=
 |  07:SCAN HDFS [tpcds_partitioned_parquet_snap.item, RANDOM]
 |     HDFS partitions=1/1 files=1 size=33.54MB
 |     predicates: tpcds_partitioned_parquet_snap.item.i_category = 'Sports'
+|     runtime filters: RF004[min_max] -> tpcds_partitioned_parquet_snap.item.i_brand_id, RF005[min_max] -> tpcds_partitioned_parquet_snap.item.i_category_id, RF006[min_max] -> tpcds_partitioned_parquet_snap.item.i_class_id, RF007[min_max] -> tpcds_partitioned_parquet_snap.item.i_manufact_id
 |     stored statistics:
 |       table: rows=360.00K size=33.54MB
 |       columns: all
@@ -2489,7 +2501,7 @@ max-parallelism=200 segment-costs=[1905712125]
 |  JOIN BUILD
 |  |  join-table-id=16 plan-id=17 cohort-id=01
 |  |  build expressions: tpcds_partitioned_parquet_snap.date_dim.d_date_sk
-|  |  runtime filters: RF002[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
+|  |  runtime filters: RF010[bloom] <- tpcds_partitioned_parquet_snap.date_dim.d_date_sk
 |  |  mem-estimate=23.25MB mem-reservation=23.25MB spill-buffer=64.00KB thread-reservation=0 cost=373
 |  |
 |  54:EXCHANGE [BROADCAST]
@@ -2515,7 +2527,7 @@ max-parallelism=200 segment-costs=[1905712125]
 |
 02:SCAN HDFS [tpcds_partitioned_parquet_snap.catalog_sales, RANDOM]
    HDFS partitions=1831/1831 files=1831 size=280.96GB
-   runtime filters: RF001[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF000[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF002[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
+   runtime filters: RF009[min_max] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF008[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_item_sk, RF010[bloom] -> tpcds_partitioned_parquet_snap.catalog_sales.cs_sold_date_sk
    stored statistics:
      table: rows=4.32G size=280.96GB
      partitions: 1831/1831 rows=4.32G