> On Mar 21, 2018, at 10:59 PM, Amit Langote <langote_amit...@lab.ntt.co.jp> 
> wrote:
> Hi David.
> On 2018/03/21 23:31, David Steele wrote:
>> Hi Amit,
>> On 3/6/18 9:44 AM, David Steele wrote:
>>> On 3/2/18 2:27 AM, Amit Langote wrote:
>>>> On 2018/03/02 15:58, Andres Freund wrote:
>>>>> On 2018-02-02 17:00:24 -0500, Tom Lane wrote:
>>>>>> Peter Eisentraut <peter.eisentr...@2ndquadrant.com> writes:
>>>>>>> There might be other options, but one way to solve this would be to
>>>>>>> treat partition bounds as a general expression in the grammar and then
>>>>>>> check in post-parse analysis that it's a constant.
>>>>>> That's pretty much what I said upthread.  What I basically don't like
>>>>>> about the current setup is that it's assuming that the bound item is
>>>>>> a bare literal.  Even disregarding future-extension issues, that's bad
>>>>>> because it can't result in an error message smarter than "syntax error"
>>>>>> when someone tries the rather natural thing of writing a more complicated
>>>>>> expression.
>>>>> Given the current state of this patch, with a number of senior
>>>>> developers disagreeing with the design, and the last CF being in
>>>>> progress, I think we should mark this as returned with feedback.
>>>> I see no problem with pursuing this in the next CF if the consensus is
>>>> that we should fix how partition bounds are parsed, instead of adopting
>>>> one of the patches to allow the Boolean literals to be accepted as
>>>> partition bounds.
>>> I'm inclined to mark this patch Returned with Feedback unless I hear
>>> opinions to the contrary.
>> Hearing no opinions to the contrary I have marked this entry Returned
>> with Feedback.  Please resubmit when you have an updated patch.
> OK.
> Btw, there is an 11dev open item recently added to the wiki that's related
> to this, but I think we might be able to deal with it independently of
> this proposal.
> * Partitions with bool partition keys *
> https://wiki.postgresql.org/wiki/PostgreSQL_11_Open_Items#Open_Issues 
> <https://wiki.postgresql.org/wiki/PostgreSQL_11_Open_Items#Open_Issues>

While testing the new partitioning features yesterday I got bit by this issue
when creating a common use-case: a table split up by active/archived records:

    CREATE TABLE records (
        record_date date NOT NULL,
        record_text text,
        archived bool NOT NULL DEFAULT FALSE
    ) PARTITION BY LIST(archived);

    CREATE TABLE records_archive
    PARTITION OF records

The last line yielding:

    ERROR:  syntax error at or near "TRUE"

[Omitted from example: the “records_active” partition]

I’m glad to see this was added to the open items. I would strongly suggest 
this prior to the 11 release as it is unintuitive from a user standpoint to use 



Reply via email to