Re: Adding support for Default partition in partitioning
Jeevan Ladhe <jeevan.ladhe@enterprisedb.com>
From: Jeevan Ladhe <jeevan.ladhe@enterprisedb.com>
To: Beena Emerson <memissemerson@gmail.com>
Cc: Rajkumar Raghuwanshi <rajkumar.raghuwanshi@enterprisedb.com>, Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>,
Robert Haas <robertmhaas@gmail.com>, Rahila Syed <rahilasyed90@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2017-05-29T08:57:04Z
Lists: pgsql-hackers
This patch needs a rebase on recent commits, and also a fix[1] that is posted for get_qual_for_list(). I am working on both of these tasks. Will update the patch once I am done with this. Regards, Jeevan Ladhe On Mon, May 29, 2017 at 12:25 PM, Beena Emerson <memissemerson@gmail.com> wrote: > On Thu, May 25, 2017 at 3:03 PM, Jeevan Ladhe > <jeevan.ladhe@enterprisedb.com> wrote: > > > > Forgot to attach the patch. > > PFA. > > > > On Thu, May 25, 2017 at 3:02 PM, Jeevan Ladhe < > jeevan.ladhe@enterprisedb.com> wrote: > >> > >> Hi Rajkumar, > >> > >>> postgres=# CREATE TEMP TABLE temp_list_part (a int) PARTITION BY LIST > (a); > >>> CREATE TABLE > >>> postgres=# CREATE TEMP TABLE temp_def_part (a int); > >>> CREATE TABLE > >>> postgres=# ALTER TABLE temp_list_part ATTACH PARTITION temp_def_part > DEFAULT; > >>> server closed the connection unexpectedly > >>> This probably means the server terminated abnormally > >>> before or while processing the request. > >>> The connection to the server was lost. Attempting reset: Failed. > >>> !> > >> > >> > >> Thanks for reporting. > >> PFA patch that fixes above issue. > >> > > > The existing comment is not valid > /* > * A null partition key is only acceptable if null-accepting > list > * partition exists. > */ > as we allow NULL to be stored in default. It should be updated. > > DROP TABLE list1; > CREATE TABLE list1 ( a int) PARTITION BY LIST (a); > CREATE TABLE list1_1 (LIKE list1); > ALTER TABLE list1 ATTACH PARTITION list1_1 FOR VALUES IN (2); > CREATE TABLE list1_def PARTITION OF list1 DEFAULT; > INSERT INTO list1 VALUES (NULL); > SELECT * FROM list1_def; > a > --- > > (1 row) > > > -- > > Beena Emerson > > EnterpriseDB: http://www.enterprisedb.com > The Enterprise PostgreSQL Company >
Commits
-
Allow a partitioned table to have a default partition.
- 6f6b99d1335b 11.0 landed
-
Adjust min/max values when changing sequence type
- 60a0b2ec8943 10.0 cited
-
BRIN auto-summarization
- 7526e10224f0 10.0 cited