Re: NOT NULL constraints on range partition key columns
Amit Langote <langote_amit_f8@lab.ntt.co.jp>
From: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>,
Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2017-05-17T00:19:36Z
Lists: pgsql-hackers
Attachments
On 2017/05/16 21:16, Amit Kapila wrote: > On Tue, May 16, 2017 at 3:26 PM, Amit Langote > <Langote_Amit_f8@lab.ntt.co.jp> wrote: >> On 2017/05/16 4:29, Robert Haas wrote: >>> Yeah, that's exactly why I think we should make the change Amit is >>> proposing here. If we don't, then we won't be able to accept NULL >>> values even after we have the default partitioning stuff. >> >> Attached is a patch for consideration. There are 2 actually, but maybe >> they should be committed together if we decide do go with this. >> > > After your changes in get_qual_for_range(), below comment in that > function needs an update and I feel it is better to update the > function header as well. > > /* > * A range-partitioned table does not allow partition keys to be null. For > * simple columns, their NOT NULL constraint suffices for the enforcement > * of non-nullability. But for the expression keys, which are still > * nullable, we must emit a IS NOT NULL expression. Collect them in > * result first. > */ Thanks for the review. I updated the comments. Thanks, Amit
Commits
-
Don't explicitly mark range partitioning columns NOT NULL.
- 3ec76ff1f2cf 10.0 landed