pgsql: Allow some exclusion constraints on partitions - Mailing list pgsql-committers

From Peter Eisentraut
Subject pgsql: Allow some exclusion constraints on partitions
Date
Msg-id E1qJUL9-0036SB-Us@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Allow some exclusion constraints on partitions

Previously we only allowed unique B-tree constraints on partitions
(and only if the constraint included all the partition keys).  But we
could allow exclusion constraints with the same restriction.  We also
require that those columns be compared for equality, not something
like &&.

Author: Paul A. Jungwirth <pj@illuminatedcomputing.com>
Reviewed-by: Ronan Dunklau <ronan.dunklau@aiven.io>
Reviewed-by: Peter Eisentraut <peter@eisentraut.org>
Discussion: https://www.postgresql.org/message-id/flat/ec8b1d9b-502e-d1f8-e909-1bf9dffe6fa5@illuminatedcomputing.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/8c852ba9a4347c4778cc610ad5a9cb50ea701b5c

Modified Files
--------------
contrib/btree_gist/Makefile                |  2 +-
contrib/btree_gist/expected/partitions.out | 82 ++++++++++++++++++++++++++++++
contrib/btree_gist/meson.build             |  1 +
contrib/btree_gist/sql/partitions.sql      | 39 ++++++++++++++
doc/src/sgml/ddl.sgml                      | 12 +++--
src/backend/commands/indexcmds.c           | 59 +++++++++++++--------
src/backend/parser/parse_utilcmd.c         |  6 ---
src/test/regress/expected/alter_table.out  |  7 +--
src/test/regress/expected/create_table.out |  8 ---
src/test/regress/expected/indexing.out     | 73 ++++++++++++++++++++++----
src/test/regress/sql/alter_table.sql       |  5 +-
src/test/regress/sql/create_table.sql      |  6 ---
src/test/regress/sql/indexing.sql          | 57 +++++++++++++++++++--
13 files changed, 284 insertions(+), 73 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: Re: pgsql: Integrate pg_bsd_indent into our build/test infrastructure.
Next
From: Peter Eisentraut
Date:
Subject: pgsql: Remove ancient special case code for dropping oid columns