Re: Declarative partitioning - another take
От | Rajkumar Raghuwanshi |
---|---|
Тема | Re: Declarative partitioning - another take |
Дата | |
Msg-id | CAKcux6=6teuMLy6ogqqOBTHck5GEs+wnL2-Gm1Y2TfXzGtijWQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Declarative partitioning - another take (Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>) |
Ответы |
Re: Declarative partitioning - another take
|
Список | pgsql-hackers |
Hi,
I have applied updated patches given by you, and observe below.
here in the given example, t6_p3 partition is not allowed to have null, but I am able to insert it, causing two nulls in the table.
--create a partition table
create table t6 (a int, b varchar) partition by list(a);
create table t6_p1 partition of t6 for values in (1,2,null);
create table t6_p2 partition of t6 for values in (4,5);
create table t6_p3 partition of t6 for values in (3,6);
--insert some values
insert into t6 select i,i::varchar from generate_series(1,6) i;
insert into t6 values (null,'A');
--try inserting null to t6_p3 partition table
insert into t6_p3 values (null,'A');
select tableoid::regclass,* from t6;
tableoid | a | b
----------+---+---
t6_p1 | 1 | 1
t6_p1 | 2 | 2
t6_p1 | | A
t6_p2 | 4 | 4
t6_p2 | 5 | 5
t6_p3 | 3 | 3
t6_p3 | 6 | 6
t6_p3 | | A
(8 rows)
I have applied updated patches given by you, and observe below.
here in the given example, t6_p3 partition is not allowed to have null, but I am able to insert it, causing two nulls in the table.
--create a partition table
create table t6 (a int, b varchar) partition by list(a);
create table t6_p1 partition of t6 for values in (1,2,null);
create table t6_p2 partition of t6 for values in (4,5);
create table t6_p3 partition of t6 for values in (3,6);
--insert some values
insert into t6 select i,i::varchar from generate_series(1,6) i;
insert into t6 values (null,'A');
--try inserting null to t6_p3 partition table
insert into t6_p3 values (null,'A');
select tableoid::regclass,* from t6;
tableoid | a | b
----------+---+---
t6_p1 | 1 | 1
t6_p1 | 2 | 2
t6_p1 | | A
t6_p2 | 4 | 4
t6_p2 | 5 | 5
t6_p3 | 3 | 3
t6_p3 | 6 | 6
t6_p3 | | A
(8 rows)
Thanks & Regards,
Rajkumar Raghuwanshi
QMG, EnterpriseDB Corporation
On Tue, Sep 6, 2016 at 1:37 PM, Amit Langote <Langote_Amit_f8@lab.ntt.co.jp> wrote:
Hi,
On 2016/09/06 16:13, Ashutosh Bapat wrote:
> I found a server crash while running make check in regress folder. with
> this set of patches. Problem is RelationBuildPartitionKey() partexprsrc may
> be used uninitialized. Initializing it with NIL fixes the crash. Here's
> patch to fix it. Came up with the fix after discussion with Amit.
Thanks for the report. Here is a rebased version of the patches including
you fix (no significant changes from those posted on Aug 26).
Thanks,
Amit
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
В списке pgsql-hackers по дате отправления: