Robert Haas <robertmhaas@gmail.com> writes:
> On Mon, Mar 11, 2019 at 2:45 AM Amit Langote
> <Langote_Amit_f8@lab.ntt.co.jp> wrote:
>> I noticed another issue with the code -- it's using strcmp() to compare
>> specified string against "minvalue" and "maxvalue", which causes the
>> following silly error:
>>
>> create table q2 partition of q for values from ("MINVALUE") to (maxvalue);
>> ERROR: column "MINVALUE" does not exist
>> LINE 1: create table q2 partition of q for values from ("MINVALUE") ...
>>
>> It should be using pg_strncasecmp().
> Uh, why? Generally, an unquoted keyword is equivalent to a quoted
> lowercase version of that same keyword, not anything else. Like
> CREATE TABLE "foo" = CREATE TABLE FOO <> CREATE TABLE "FOO".
Yeah. The behavior shown above is entirely correct, and accepting the
statement would be flat out wrong; it would cause trouble if somebody
created a table containing multiple case-variations of MINVALUE.
regards, tom lane