From 028b15405b4113e1b0f492bf9908d001a5983a77 Mon Sep 17 00:00:00 2001 From: Alexander Korotkov Date: Tue, 9 Jan 2024 10:12:14 +0200 Subject: [PATCH] An addition to 8c441c08279 Given that now SJE doesn't work with result relation, turn a code dealing with that into an assert that it shouldn't happen. --- src/backend/optimizer/plan/analyzejoins.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/backend/optimizer/plan/analyzejoins.c b/src/backend/optimizer/plan/analyzejoins.c index 1f2167a11d..8a2ccbb604 100644 --- a/src/backend/optimizer/plan/analyzejoins.c +++ b/src/backend/optimizer/plan/analyzejoins.c @@ -1900,8 +1900,10 @@ remove_self_join_rel(PlannerInfo *root, PlanRowMark *kmark, PlanRowMark *rmark, /* Replace varno in all the query structures */ query_tree_walker(root->parse, replace_varno_walker, &ctx, QTW_EXAMINE_SORTGROUP); - if (root->parse->resultRelation == toRemove->relid) - root->parse->resultRelation = toKeep->relid; + + /* See remove_self_joins_one_group() */ + Assert(root->parse->resultRelation != toRemove->relid); + Assert(root->parse->resultRelation != toKeep->relid); /* Replace links in the planner info */ remove_rel_from_query(root, toRemove, toKeep->relid, NULL, NULL);