From 896246ea10cb9d20f69d0442223ce5fa9b365636 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 23 Oct 2026 10:29:45 -0400 Subject: [PATCH] Remove faulty Asserts added by 1999fe227. I added these assertions in an attempt to show that setting ret_old_alias/ret_new_alias in set_deparse_plan() fully covered all the parts of the plan where RETURNING Vars could be found. But it emerges that the returningOldAlias/returningNewAlias fields they are filled from can sometimes be NULL themselves, allowing the asserts to fail. We discussed various ways that we might adjust the rewriter to prevent that, but the upshot of the discussion was just to remove the asserts again. Reported-by: Ayush Tiwari Author: Tom Lane Reviewed-by: Dean Rasheed Discussion: https://postgr.es/m/CAJTYsWWsORQbyViXmsvT4-NWkjuykkjjk2c+gQtq+vw2PJON-A@mail.gmail.com Backpatch-through: 18 --- src/backend/utils/adt/ruleutils.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index 908f9056fee..ccfd7f4728f 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -7737,15 +7737,9 @@ get_variable(Var *var, int levelsup, bool istoplevel, deparse_context *context) /* might be returning old/new column value */ if (var->varreturningtype == VAR_RETURNING_OLD) - { refname = dpns->ret_old_alias; - Assert(refname); - } else if (var->varreturningtype == VAR_RETURNING_NEW) - { refname = dpns->ret_new_alias; - Assert(refname); - } else refname = (char *) list_nth(dpns->rtable_names, varno - 1);