pgsql: Remove es_result_relation_info from EState.

From: Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Remove es_result_relation_info from EState.
Date: 2020-10-14 08:59:18
Message-ID: E1kSccw-0007zm-Og@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove es_result_relation_info from EState.

Maintaining 'es_result_relation_info' correctly at all times has become
cumbersome, especially with partitioning where each partition gets its
own result relation info. Having to set and reset it across arbitrary
operations has caused bugs in the past.

This changes all the places that used 'es_result_relation_info', to
receive the currently active ResultRelInfo via function parameters
instead.

Author: Amit Langote
Discussion: https://www.postgresql.org/message-id/CA%2BHiwqGEmiib8FLiHMhKB%2BCH5dRgHSLc5N5wnvc4kym%2BZYpQEQ%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/a04daa97a4339c38e304cd6164d37da540d665a8

Modified Files
--------------
src/backend/commands/copy.c | 19 +--
src/backend/commands/tablecmds.c | 2 -
src/backend/executor/execIndexing.c | 9 +-
src/backend/executor/execMain.c | 4 -
src/backend/executor/execReplication.c | 24 ++--
src/backend/executor/execUtils.c | 1 -
src/backend/executor/nodeModifyTable.c | 200 +++++++++++++------------------
src/backend/replication/logical/worker.c | 17 +--
src/include/executor/executor.h | 19 ++-
src/include/executor/nodeModifyTable.h | 4 +-
src/include/nodes/execnodes.h | 1 -
src/test/regress/expected/insert.out | 4 +-
src/test/regress/sql/insert.sql | 4 +-
13 files changed, 131 insertions(+), 177 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Thomas Munro 2020-10-14 22:43:49 pgsql: Make WL_POSTMASTER_DEATH level-triggered on kqueue builds.
Previous Message Peter Eisentraut 2020-10-14 06:34:39 pgsql: Use https for gnu.org links