public inbox for [email protected]
help / color / mirror / Atom feedFrom: Dean Rasheed <[email protected]>
To: [email protected]
Subject: pgsql: Remove p_is_insert from struct ParseState.
Date: Thu, 12 Feb 2026 09:07:18 +0000
Message-ID: <[email protected]> (raw)
Remove p_is_insert from struct ParseState.
The only place that used p_is_insert was transformAssignedExpr(),
which used it to distinguish INSERT from UPDATE when handling
indirection on assignment target columns -- see commit c1ca3a19df3.
However, this information is already available to
transformAssignedExpr() via its exprKind parameter, which is always
either EXPR_KIND_INSERT_TARGET or EXPR_KIND_UPDATE_TARGET.
As noted in the commit message for c1ca3a19df3, this use of
p_is_insert isn't particularly pretty, so have transformAssignedExpr()
use the exprKind parameter instead. This then allows p_is_insert to be
removed entirely, which simplifies state management in a few other
places across the parser.
Author: Viktor Holmberg <[email protected]>
Reviewed-by: Dean Rasheed <[email protected]>
Discussion: https://postgr.es/m/badc3b4c-da73-4000-b8d3-638a6f53a769@Spark
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/706cadde3239842a41a3375d50dda8b33325c008
Modified Files
--------------
src/backend/parser/analyze.c | 9 ---------
src/backend/parser/parse_merge.c | 11 +++--------
src/backend/parser/parse_target.c | 6 ++++--
src/include/parser/parse_node.h | 5 -----
4 files changed, 7 insertions(+), 24 deletions(-)
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected]
Subject: Re: pgsql: Remove p_is_insert from struct ParseState.
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox