pgsql: Allow a partitioned table to have a default partition.

From: Robert Haas <rhaas(at)postgresql(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Allow a partitioned table to have a default partition.
Date: 2017-09-08 21:35:00
Message-ID: E1dqQvU-00037v-9G@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Allow a partitioned table to have a default partition.

Any tuples that don't route to any other partition will route to the
default partition.

Jeevan Ladhe, Beena Emerson, Ashutosh Bapat, Rahila Syed, and Robert
Haas, with review and testing at various stages by (at least) Rushabh
Lathia, Keith Fiske, Amit Langote, Amul Sul, Rajkumar Raghuanshi, Sven
Kunze, Kyotaro Horiguchi, Thom Brown, Rafia Sabih, and Dilip Kumar.

Discussion: http://postgr.es/m/CAH2L28tbN4SYyhS7YV1YBWcitkqbhSWfQCy0G=apRcC_PEO-bg@mail.gmail.com
Discussion: http://postgr.es/m/CAOG9ApEYj34fWMcvBMBQ-YtqR9fTdXhdN82QEKG0SVZ6zeL1xg@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/6f6b99d1335be8ea1b74581fc489a97b109dd08a

Modified Files
--------------
doc/src/sgml/catalogs.sgml | 11 +
doc/src/sgml/ref/alter_table.sgml | 31 +-
doc/src/sgml/ref/create_table.sgml | 35 +-
src/backend/catalog/heap.c | 41 +-
src/backend/catalog/partition.c | 644 ++++++++++++++++++++++++++---
src/backend/commands/tablecmds.c | 187 +++++++--
src/backend/nodes/copyfuncs.c | 1 +
src/backend/nodes/equalfuncs.c | 1 +
src/backend/nodes/outfuncs.c | 1 +
src/backend/nodes/readfuncs.c | 1 +
src/backend/parser/gram.y | 27 +-
src/backend/parser/parse_utilcmd.c | 12 +
src/backend/utils/adt/ruleutils.c | 8 +-
src/bin/psql/describe.c | 11 +-
src/bin/psql/tab-complete.c | 4 +-
src/include/catalog/catversion.h | 2 +-
src/include/catalog/partition.h | 7 +
src/include/catalog/pg_partitioned_table.h | 13 +-
src/include/commands/tablecmds.h | 4 +
src/include/nodes/parsenodes.h | 1 +
src/test/regress/expected/alter_table.out | 49 +++
src/test/regress/expected/create_table.out | 20 +
src/test/regress/expected/insert.out | 147 ++++++-
src/test/regress/expected/plancache.out | 26 ++
src/test/regress/expected/sanity_check.out | 4 +
src/test/regress/expected/update.out | 33 ++
src/test/regress/sql/alter_table.sql | 47 +++
src/test/regress/sql/create_table.sql | 20 +
src/test/regress/sql/insert.sql | 69 +++-
src/test/regress/sql/plancache.sql | 21 +
src/test/regress/sql/update.sql | 24 ++
31 files changed, 1367 insertions(+), 135 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2017-09-08 21:38:08 pgsql: Fix more portability issues in new pgbench TAP tests.
Previous Message Tom Lane 2017-09-08 21:25:18 pgsql: Fix pgbench TAP tests to work with --disable-thread-safety.