Thread: pgsql: Revert support for ALTER TABLE ... MERGE/SPLIT PARTITION(S) comm

pgsql: Revert support for ALTER TABLE ... MERGE/SPLIT PARTITION(S) comm

From
Alexander Korotkov
Date:
Revert support for ALTER TABLE ... MERGE/SPLIT PARTITION(S) commands

This commit reverts 1adf16b8fb, 87c21bb941, and subsequent fixes and
improvements including df64c81ca9, c99ef1811a, 9dfcac8e15, 885742b9f8,
842c9b2705, fcf80c5d5f, 96c7381c4c, f4fc7cb54b, 60ae37a8bc, 259c96fa8f,
449cdcd486, 3ca43dbbb6, 2a679ae94e, 3a82c689fd, fbd4321fd5, d53a4286d7,
c086896625, 4e5d6c4091, 04158e7fa3.

The reason for reverting is security issues related to repeatable name lookups
(CVE-2014-0062).  Even though 04158e7fa3 solved part of the problem, there
are still remaining issues, which aren't feasible to even carefully analyze
before the RC deadline.

Reported-by: Noah Misch, Robert Haas
Discussion: https://postgr.es/m/20240808171351.a9.nmisch%40google.com
Backpatch-through: 17

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3890d90c1508125729ed20038d90513694fc3a7b

Modified Files
--------------
doc/src/sgml/ddl.sgml                              |   38 -
doc/src/sgml/ref/alter_table.sgml                  |  165 +-
src/backend/commands/tablecmds.c                   |  819 +---------
src/backend/parser/gram.y                          |   61 +-
src/backend/parser/parse_utilcmd.c                 |  193 +--
src/backend/partitioning/partbounds.c              |  901 +----------
src/backend/tcop/utility.c                         |    6 -
src/backend/utils/adt/ruleutils.c                  |   18 -
src/bin/psql/tab-complete.c                        |   18 +-
src/include/nodes/parsenodes.h                     |   16 -
src/include/parser/kwlist.h                        |    2 -
src/include/partitioning/partbounds.h              |   11 -
src/include/utils/ruleutils.h                      |    2 -
src/test/isolation/expected/partition-merge.out    |  199 ---
src/test/isolation/expected/partition-split.out    |  190 ---
src/test/isolation/isolation_schedule              |    2 -
src/test/isolation/specs/partition-merge.spec      |   54 -
src/test/isolation/specs/partition-split.spec      |   54 -
.../modules/test_ddl_deparse/test_ddl_deparse.c    |    6 -
src/test/regress/expected/partition_merge.out      |  945 ------------
src/test/regress/expected/partition_split.out      | 1589 --------------------
src/test/regress/parallel_schedule                 |    2 +-
src/test/regress/sql/partition_merge.sql           |  609 --------
src/test/regress/sql/partition_split.sql           |  962 ------------
src/tools/pgindent/typedefs.list                   |    2 -
25 files changed, 36 insertions(+), 6828 deletions(-)