From a3978b24d0ee8847e5b332a08014ced896edae2c Mon Sep 17 00:00:00 2001 From: Igor Nikonov Date: Thu, 15 Aug 2024 11:11:49 +0000 Subject: [PATCH] Fix for subqueries with FINAL --- src/Planner/findParallelReplicasQuery.cpp | 6 ++++++ ... => 03222_parallel_replicas_final_in_subquery.reference} | 0 ...ed.sql => 03222_parallel_replicas_final_in_subquery.sql} | 0 3 files changed, 6 insertions(+) rename tests/queries/0_stateless/{03222_pr_final_not_supported.reference => 03222_parallel_replicas_final_in_subquery.reference} (100%) rename tests/queries/0_stateless/{03222_pr_final_not_supported.sql => 03222_parallel_replicas_final_in_subquery.sql} (100%) diff --git a/src/Planner/findParallelReplicasQuery.cpp b/src/Planner/findParallelReplicasQuery.cpp index 39edb1e6516..cd02e01c392 100644 --- a/src/Planner/findParallelReplicasQuery.cpp +++ b/src/Planner/findParallelReplicasQuery.cpp @@ -52,7 +52,13 @@ std::stack getSupportingParallelReplicasQuery(const IQueryTre const auto & storage = table_node.getStorage(); /// Here we check StorageDummy as well, to support a query tree with replaced storages. if (std::dynamic_pointer_cast(storage) || typeid_cast(storage.get())) + { + /// parallel replicas is not supported with FINAL + if (table_node.getTableExpressionModifiers()->hasFinal()) + return {}; + return res; + } return {}; } diff --git a/tests/queries/0_stateless/03222_pr_final_not_supported.reference b/tests/queries/0_stateless/03222_parallel_replicas_final_in_subquery.reference similarity index 100% rename from tests/queries/0_stateless/03222_pr_final_not_supported.reference rename to tests/queries/0_stateless/03222_parallel_replicas_final_in_subquery.reference diff --git a/tests/queries/0_stateless/03222_pr_final_not_supported.sql b/tests/queries/0_stateless/03222_parallel_replicas_final_in_subquery.sql similarity index 100% rename from tests/queries/0_stateless/03222_pr_final_not_supported.sql rename to tests/queries/0_stateless/03222_parallel_replicas_final_in_subquery.sql