I'm not sure of the less than vs less than or equals in this one, so it may be 
my ignorance... but which partition gets records with a date of '24-02-01", it 
seems that without a more explicit definition there is ambiguity on dates at 
the partition limits when those dates are common to multiple partitions?

To avoid this shouldn't the definition be:

> xof=# create table t (pk bigint not null, ts timestamp not null) partition by 
> range (ts, pk);
> CREATE TABLE
> xof=# create table t1 partition of t for values from 
> ('2024-01-01'::timestamp, minvalue) to ('2024-01-31'::timestamp, maxvalue);
> CREATE TABLE
> xof=# create table t2 partition of t for values from 
> ('2024-02-01'::timestamp, minvalue) to ('2024-02-29'::timestamp, maxvalue);



Brent Wood

Principal Technician, Fisheries
NIWA
DDI:  +64 (4) 3860529

________________________________
From: Christophe Pettus <x...@thebuild.com>
Sent: Wednesday, September 11, 2024 10:13
To: pgsql-general <pgsql-gene...@postgresql.org>
Subject: Overlapping values (?) in multi-column partitioned tables

Hi,

I am clearly not understanding something.  Consider:

> xof=# create table t (pk bigint not null, ts timestamp not null) partition by 
> range (ts, pk);
> CREATE TABLE
> xof=# create table t1 partition of t for values from 
> ('2024-01-01'::timestamp, minvalue) to ('2024-02-01'::timestamp, maxvalue);
> CREATE TABLE
> xof=# create table t2 partition of t for values from 
> ('2024-02-01'::timestamp, minvalue) to ('2024-03-01'::timestamp, maxvalue);
> ERROR:  partition "t2" would overlap partition "t1"
> LINE 1: ...on of t for values from ('2024-02-01'::timestamp, minvalue) ...
>                                                              ^
> xof=#

In what way do those partitions overlap?  In other words, there does not appear 
to be a value of (ts, pk) having '2024-01-01'::timestamp <= ts < 
'2024-03-01'::timestamp for any pk where it would be ambiguous which partition 
that row would go into.  (I'm imagining it on a cartesian plane, and there 
isn't any overlap between the rectangles those partition boundaries define.)

I'm obviously missing something, but... what?  Thank you!

[https://www.niwa.co.nz/static/niwa-2018-horizontal-180.png] 
<https://www.niwa.co.nz>
Brent Wood
Principal Technician - GIS and Spatial Data Management
Programme Leader - Environmental Information Delivery
+64-4-386-0529

National Institute of Water & Atmospheric Research Ltd (NIWA)
301 Evans Bay Parade Hataitai Wellington New Zealand
Connect with NIWA: niwa.co.nz<https://www.niwa.co.nz> 
Facebook<https://www.facebook.com/nzniwa> 
LinkedIn<https://www.linkedin.com/company/niwa> 
Twitter<https://twitter.com/niwa_nz> 
Instagram<https://www.instagram.com/niwa_science> 
YouTube<https://www.youtube.com/channel/UCJ-j3MLMg1H59Ak2UaNLL3A>
To ensure compliance with legal requirements and to maintain cyber security 
standards, NIWA's IT systems are subject to ongoing monitoring, activity 
logging and auditing. This monitoring and auditing service may be provided by 
third parties. Such third parties can access information transmitted to, 
processed by and stored on NIWA's IT systems.
Note: This email is intended solely for the use of the addressee and may 
contain information that is confidential or subject to legal professional 
privilege. If you receive this email in error please immediately notify the 
sender and delete the email.

Reply via email to