Re: citext operator precedence fix

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: "David E(dot) Wheeler" <david(at)kineticode(dot)com>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: citext operator precedence fix
Date: 2011-09-23 17:00:23
Message-ID: CA+TgmobFnK4uwt84RhL_yFp54RRGFqcB0pWGr7b5v=HXUdJaEg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Sep 23, 2011 at 12:37 PM, Josh Berkus <josh(at)agliodbs(dot)com> wrote:
>> I'm OK with the proposed behavior change and I agree that it's
>> probably what people want, but I am awfully suspicious that those
>> extra casts are going to break something you haven't thought about.
>> It might be worth posting a rough version first just to see if I (or
>> someone else) can break it before you spend a lot of time on it.
>
> Additional breakage confirmed (hash functions, etc.)  Looks like I need
> to add a lot more support functions and test.   This is still worth
> doing, but don't expect it for the next commitfest.

I would also be looking carefully at whether you can construct a
scenario where the operator resolution code can't decide between
=(text,citext) or =(text,text) - you probably need a third type like
varchar or bpchar in the mix to trigger a failure, if there's one to
be found. Or you might have a problem with citext = bpchar being
ambiguous between =(text,citext) and =(varchar,text), or some such
thing.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message YAMAMOTO Takashi 2011-09-23 17:10:26 Re: BUG #6218: TRAP: FailedAssertion( "!(owner->nsnapshots == 0)", File: "resowner.c", Line: 365)
Previous Message Heikki Linnakangas 2011-09-23 16:58:30 Re: Hot Backup with rsync fails at pg_clog if under load