Re: table partition and column default

Поиск
Список
Период
Сортировка
От Amit Langote
Тема Re: table partition and column default
Дата
Msg-id CA+HiwqFo+oQ9QqHo1hXYE_gvFo59EE_Tcu2ZK6cw4r4HqMUWhw@mail.gmail.com
обсуждение исходный текст
Ответ на table partition and column default  (Fujii Masao <masao.fujii@gmail.com>)
Ответы Re: table partition and column default  (Fujii Masao <masao.fujii@gmail.com>)
Список pgsql-hackers
Fujii-san,

On Wed, Dec 25, 2019 at 12:19 PM Fujii Masao <masao.fujii@gmail.com> wrote:
>
> Hi,
>
> As the document explains, column defaults can be specified separately for
> each partition. But I found that INSERT via the partitioned table ignores
> that default. Is this expected behavior or bug?
>
> CREATE TABLE test (i INT, j INT) PARTITION BY RANGE (i);
> CREATE TABLE test1 PARTITION OF test (j DEFAULT 99) FOR VALUES FROM (1) TO (10);
> INSERT INTO test VALUES (1, DEFAULT);
> INSERT INTO test1 VALUES (2, DEFAULT);
> SELECT * FROM test;
>  i |   j
> ---+--------
>  1 | (null)
>  2 |     99
> (2 rows)
>
> In the above example, INSERT accessing directly to the partition uses
> the default, but INSERT via the partitioned table not.

This is as of now expected.

IIRC, there was some discussion about implementing a feature whereby
partition's default will used for an attribute if it's null even after
considering the parent table's default, that is, when no default value
is defined in the parent.  The details are at toward the end of this
thread:

https://www.postgresql.org/message-id/flat/578398af46350effe7111895a4856b87b02e000e.camel%402ndquadrant.com

Thanks,
Amit



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Mahendra Singh
Дата:
Сообщение: Re: Assert failure due to "drop schema pg_temp_3 cascade" fortemporary tables and \d+ is not showing any info after drooping temp table schema
Следующее
От: Mahendra Singh
Дата:
Сообщение: Re: relpages of btree indexes are not truncating even after deletingall the tuples from table and doing vacuum