pgsql: Revert UPDATE/DELETE FOR PORTION OF

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Revert UPDATE/DELETE FOR PORTION OF
Date: 2026-09-15 10:31:39
Message-ID: E1x6QRv-00000000QOT-0jWk@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Revert UPDATE/DELETE FOR PORTION OF

List of commits reverted:

8e72d914c52 Add UPDATE/DELETE FOR PORTION OF
b6ccd30d8ff Add isolation tests for UPDATE/DELETE FOR PORTION OF
33db6c4baf1 Fix DELETE/UPDATE FOR PORTION OF with rules
7b22f15a015 Add psql tab completion for FOR PORTION OF clause
7ca8c942967 Fix FOR PORTION OF with non-updatable view columns
993a7aa0e4a Fix cross-leftover pollution in FOR PORTION OF insert triggers
7ac030d5b15 Require UPDATE permission on FOR PORTION OF column
f0aedc7cb0e Small terminology fixes in comments
7d13b03a2e6 Fix FOR PORTION OF for inheritance children
a272a58b942 Move FOR PORTION OF volatile check into planner
a40fdf65886 Reject child partition FDWs in FOR PORTION OF
bc3ae886a75 Forbid FOR PORTION OF with WHERE CURRENT OF
e994f956e48 Forbid generated columns in FOR PORTION OF
dfce19c2300 Forbid FOR PORTION OF on views with INSTEAD OF triggers
20fe90bbb93 Fix RLS checks for FOR PORTION OF leftover rows
9170c8b7169 Test what BEFORE UPDATE triggers do to FOR PORTION OF
7090c696cc9 Deparse FOR PORTION OF using the range column's current name.
62d1a5f8be8 Avoid RETURNING side effects for FOR PORTION OF leftovers.
9924e2d900b Enforce WITH CHECK OPTION on DELETE FOR PORTION OF leftovers
c16a1b4f2ce Fix error code for null FOR PORTION OF target
610976420a3 Fix assertion failures in DELETE FOR PORTION OF tuple routing
438f027238c Resolve untyped parameters in FOR PORTION OF FROM/TO bounds
140fdfcdf12 Don't evaluate the FOR PORTION OF target under EXPLAIN

Discussion: https://www.postgresql.org/message-id/62bf70cc-dc33-4188-8070-a8c177bb61de%40eisentraut.org

Branch
------
master

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

Modified Files
--------------
contrib/postgres_fdw/expected/postgres_fdw.out | 81 +-
contrib/postgres_fdw/sql/postgres_fdw.sql | 58 -
contrib/test_decoding/expected/ddl.out | 52 -
contrib/test_decoding/sql/ddl.sql | 30 -
doc/src/sgml/ddl.sgml | 4 +-
doc/src/sgml/dml.sgml | 173 -
doc/src/sgml/glossary.sgml | 15 -
doc/src/sgml/images/Makefile | 5 +-
doc/src/sgml/images/meson.build | 3 -
doc/src/sgml/images/temporal-delete.svg | 41 -
doc/src/sgml/images/temporal-delete.txt | 10 -
doc/src/sgml/images/temporal-isolation.svg | 47 -
doc/src/sgml/images/temporal-isolation.txt | 44 -
doc/src/sgml/images/temporal-update.svg | 45 -
doc/src/sgml/images/temporal-update.txt | 10 -
doc/src/sgml/ref/create_policy.sgml | 32 -
doc/src/sgml/ref/create_publication.sgml | 6 -
doc/src/sgml/ref/create_view.sgml | 20 +-
doc/src/sgml/ref/delete.sgml | 116 +-
doc/src/sgml/ref/update.sgml | 120 +-
doc/src/sgml/trigger.sgml | 12 -
src/backend/commands/copyfrom.c | 2 +-
src/backend/executor/execMain.c | 12 +-
src/backend/executor/execPartition.c | 26 +-
src/backend/executor/nodeModifyTable.c | 460 +--
src/backend/nodes/nodeFuncs.c | 37 -
src/backend/optimizer/plan/createplan.c | 6 +-
src/backend/optimizer/plan/planner.c | 41 -
src/backend/optimizer/util/pathnode.c | 3 +-
src/backend/parser/analyze.c | 360 +--
src/backend/parser/gram.y | 111 +-
src/backend/parser/parse_agg.c | 10 -
src/backend/parser/parse_collate.c | 1 -
src/backend/parser/parse_expr.c | 8 -
src/backend/parser/parse_func.c | 3 -
src/backend/parser/parse_merge.c | 2 +-
src/backend/rewrite/rewriteHandler.c | 138 +-
src/backend/rewrite/rowsecurity.c | 25 -
src/backend/utils/adt/ruleutils.c | 48 -
src/backend/utils/cache/lsyscache.c | 25 -
src/bin/psql/t/010_tab_completion.pl | 40 +-
src/bin/psql/tab-complete.in.c | 30 +-
src/include/catalog/catversion.h | 2 +-
src/include/executor/executor.h | 2 +-
src/include/nodes/execnodes.h | 22 -
src/include/nodes/parsenodes.h | 21 -
src/include/nodes/pathnodes.h | 1 -
src/include/nodes/plannodes.h | 2 -
src/include/nodes/primnodes.h | 34 -
src/include/optimizer/pathnode.h | 2 +-
src/include/parser/analyze.h | 3 +-
src/include/parser/kwlist.h | 1 -
src/include/parser/parse_node.h | 1 -
src/include/utils/lsyscache.h | 1 -
src/test/isolation/expected/for-portion-of.out | 4089 ------------------------
src/test/isolation/isolation_schedule | 1 -
src/test/isolation/specs/for-portion-of.spec | 597 ----
src/test/regress/expected/for_portion_of.out | 2987 -----------------
src/test/regress/expected/privileges.out | 38 -
src/test/regress/expected/rowsecurity.out | 39 +-
src/test/regress/expected/updatable_views.out | 218 --
src/test/regress/expected/without_overlaps.out | 245 +-
src/test/regress/parallel_schedule | 2 +-
src/test/regress/sql/for_portion_of.sql | 1967 ------------
src/test/regress/sql/privileges.sql | 35 -
src/test/regress/sql/rowsecurity.sql | 33 +-
src/test/regress/sql/updatable_views.sql | 160 -
src/test/regress/sql/without_overlaps.sql | 120 +-
src/test/subscription/t/034_temporal.pl | 100 +-
src/tools/pgindent/typedefs.list | 3 -
70 files changed, 127 insertions(+), 12911 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Dean Rasheed 2026-09-15 10:51:30 pgsql: Fix missing SIREAD lock on the row found by ON CONFLICT.
Previous Message Peter Eisentraut 2026-09-15 10:07:26 pgsql: Fix indirect include