From bfcb3c63fd070c30cc7b2c0748dfb1cdd74c5906 Mon Sep 17 00:00:00 2001 From: Mehmet Yilmaz Date: Fri, 27 Jun 2025 09:20:46 +0000 Subject: [PATCH] add RTE_GROUP to the non-complex whitelist for PG 18. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A synthetic RTE_GROUP is harmless; treating it as “complex” flips the flag and prevents a router plan. --- src/backend/distributed/planner/multi_logical_planner.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/backend/distributed/planner/multi_logical_planner.c b/src/backend/distributed/planner/multi_logical_planner.c index d1e2e6bca..cb7c87371 100644 --- a/src/backend/distributed/planner/multi_logical_planner.c +++ b/src/backend/distributed/planner/multi_logical_planner.c @@ -1180,6 +1180,9 @@ HasComplexRangeTableType(Query *queryTree) rangeTableEntry->rtekind != RTE_SUBQUERY && rangeTableEntry->rtekind != RTE_FUNCTION && rangeTableEntry->rtekind != RTE_VALUES && +#if PG_VERSION_NUM >= PG_VERSION_18 + rangeTableEntry->rtekind != RTE_GROUP && +#endif !IsJsonTableRTE(rangeTableEntry)) { hasComplexRangeTableType = true;