Обсуждение: Range partitioning and overlap

Поиск
Список
Период
Сортировка

Range partitioning and overlap

От
Edson Richter
Дата:
Hi,

Using PostgreSQL 13.1 - I need your guidance about corretly implementing partition by timestamp ranges.

Looking at documentation ( https://www.postgresql.org/docs/13/ddl-partitioning.html ) there a statement saying explicit

"Range Partitioning

The table is partitioned into ranges defined by a key column or set of columns, with no overlap between the ranges of values assigned to different partitions. For example, one might partition by date ranges, or by ranges of identifiers for particular business objects."



But afterwards, looking into examples, the ranges overlaps:

CREATE TABLE measurement_y2006m02 PARTITION OF measurement
    FOR VALUES FROM ('2006-02-01') TO ('2006-03-01');

CREATE TABLE measurement_y2006m03 PARTITION OF measurement
    FOR VALUES FROM ('2006-03-01') TO ('2006-04-01');

...
CREATE TABLE measurement_y2007m11 PARTITION OF measurement
    FOR VALUES FROM ('2007-11-01') TO ('2007-12-01');

CREATE TABLE measurement_y2007m12 PARTITION OF measurement
    FOR VALUES FROM ('2007-12-01') TO ('2008-01-01')
    TABLESPACE fasttablespace;

Is there a misinterpretation from my side, or examples are inconsistent with the paragraph above?

Thanks,

Edson


Re: Range partitioning and overlap

От
"David G. Johnston"
Дата:
On Fri, Nov 13, 2020 at 1:29 PM Edson Richter <edsonrichter@hotmail.com> wrote:
"Range Partitioning

The table is partitioned into ranges defined by a key column or set of columns, with no overlap between the ranges of values assigned to different partitions. For example, one might partition by date ranges, or by ranges of identifiers for particular business objects."

Is there a misinterpretation from my side, or examples are inconsistent with the paragraph above?

Further on the documentation: "When creating a range partition, the lower bound specified with FROM is an inclusive bound, whereas the upper bound specified with TO is an exclusive bound."

David J.

RE: Range partitioning and overlap

От
Edson Richter
Дата:

De: David G. Johnston <david.g.johnston@gmail.com>
Enviado: sexta-feira, 13 de novembro de 2020 17:32
Para: Edson Richter <edsonrichter@hotmail.com>
Cc: pgsql-general <pgsql-general@postgresql.org>
Assunto: Re: Range partitioning and overlap
 
On Fri, Nov 13, 2020 at 1:29 PM Edson Richter <edsonrichter@hotmail.com> wrote:
"Range Partitioning

The table is partitioned into ranges defined by a key column or set of columns, with no overlap between the ranges of values assigned to different partitions. For example, one might partition by date ranges, or by ranges of identifiers for particular business objects."

Is there a misinterpretation from my side, or examples are inconsistent with the paragraph above?

Further on the documentation: "When creating a range partition, the lower bound specified with FROM is an inclusive bound, whereas the upper bound specified with TO is an exclusive bound."

David J.

I'm pretty sure I cannot find this statement in PostgreSQL 13 documentation page about partitioning. May be this statement is in another page?
Would you mind to share the URL with this statement?

Thanks,

Edson


Re: Range partitioning and overlap

От
Tom Lane
Дата:
Edson Richter <edsonrichter@hotmail.com> writes:
> Further on the documentation: "When creating a range partition, the lower bound specified with FROM is an inclusive
bound,whereas the upper bound specified with TO is an exclusive bound." 

> I'm pretty sure I cannot find this statement in PostgreSQL 13 documentation page about partitioning. May be this
statementis in another page? 

It's in the CREATE TABLE reference page.  Seems like it would be a good
idea to have it also in ddl.sgml's discussion of partitioning, though.

            regards, tom lane



RE: Range partitioning and overlap

От
Edson Richter
Дата:
De: Tom Lane <tgl@sss.pgh.pa.us>
Enviado: sexta-feira, 13 de novembro de 2020 17:58
Para: Edson Richter <edsonrichter@hotmail.com>
Cc: David G. Johnston <david.g.johnston@gmail.com>; pgsql-general <pgsql-general@postgresql.org>
Assunto: Re: Range partitioning and overlap
 
Edson Richter <edsonrichter@hotmail.com> writes:
> Further on the documentation: "When creating a range partition, the lower bound specified with FROM is an inclusive bound, whereas the upper bound specified with TO is an exclusive bound."

> I'm pretty sure I cannot find this statement in PostgreSQL 13 documentation page about partitioning. May be this statement is in another page?

It's in the CREATE TABLE reference page.  Seems like it would be a good
idea to have it also in ddl.sgml's discussion of partitioning, though.

                        regards, tom lane

Thanks!

Regards,

Edson

Re: Range partitioning and overlap

От
"David G. Johnston"
Дата:
On Fri, Nov 13, 2020 at 2:08 PM Edson Richter <edsonrichter@hotmail.com> wrote:
De: Tom Lane <tgl@sss.pgh.pa.us>
Enviado: sexta-feira, 13 de novembro de 2020 17:58
Para: Edson Richter <edsonrichter@hotmail.com>
Cc: David G. Johnston <david.g.johnston@gmail.com>; pgsql-general <pgsql-general@postgresql.org>
Assunto: Re: Range partitioning and overlap
 
Edson Richter <edsonrichter@hotmail.com> writes:
> Further on the documentation: "When creating a range partition, the lower bound specified with FROM is an inclusive bound, whereas the upper bound specified with TO is an exclusive bound."

> I'm pretty sure I cannot find this statement in PostgreSQL 13 documentation page about partitioning. May be this statement is in another page?

It's in the CREATE TABLE reference page.  Seems like it would be a good
idea to have it also in ddl.sgml's discussion of partitioning, though.

Patch thread with commit:


David J.