From 1ef23a865e338e99606130981df91c34c3d2c049 Mon Sep 17 00:00:00 2001 From: Onder Kalaci Date: Wed, 27 Jul 2022 12:22:21 +0200 Subject: [PATCH] f --- .../planner/insert_select_planner.c | 30 +++---------------- 1 file changed, 4 insertions(+), 26 deletions(-) diff --git a/src/backend/distributed/planner/insert_select_planner.c b/src/backend/distributed/planner/insert_select_planner.c index 2eecb6e9f..a49763152 100644 --- a/src/backend/distributed/planner/insert_select_planner.c +++ b/src/backend/distributed/planner/insert_select_planner.c @@ -458,17 +458,11 @@ PrepareInsertSelectForCitusPlanner(Query *insertSelectQuery) RangeTblEntry *selectRte = ExtractSelectRangeTableEntry(insertSelectQuery); Oid targetRelationId = insertRte->relid; - bool isWrapped = false; + selectRte->subquery = WrapSubquery(selectRte->subquery); + selectRte->subquery->cteList = copyObject(insertSelectQuery->cteList); + selectRte->subquery->hasModifyingCTE = insertSelectQuery->hasModifyingCTE; + insertSelectQuery->cteList = NIL; - if (selectRte->subquery->setOperations != NULL) - { - /* - * Prepare UNION query for reordering and adding casts by - * wrapping it in a subquery to have a single target list. - */ - selectRte->subquery = WrapSubquery(selectRte->subquery); - isWrapped = true; - } /* this is required for correct deparsing of the query */ ReorderInsertSelectTargetLists(insertSelectQuery, insertRte, selectRte); @@ -482,22 +476,6 @@ PrepareInsertSelectForCitusPlanner(Query *insertSelectQuery) copyObject(selectRte->subquery->targetList), targetRelationId); - if (list_length(insertSelectQuery->cteList) > 0) - { - if (!isWrapped) - { - /* - * By wrapping the SELECT in a subquery, we can avoid adjusting - * ctelevelsup in RTE's that point to the CTEs. - */ - selectRte->subquery = WrapSubquery(selectRte->subquery); - } - - /* copy CTEs from the INSERT ... SELECT statement into outer SELECT */ - selectRte->subquery->cteList = copyObject(insertSelectQuery->cteList); - selectRte->subquery->hasModifyingCTE = insertSelectQuery->hasModifyingCTE; - insertSelectQuery->cteList = NIL; - } }