Re: Fixing busted citext function declarations - Mailing list pgsql-hackers

From David G. Johnston
Subject Re: Fixing busted citext function declarations
Date
Msg-id CAKFQuwbx+CkoWnXSDwK_Z4erzvV0Da0Vbhwx0o4P6t=Kdf+Jyg@mail.gmail.com
Whole thread Raw
In response to Re: Fixing busted citext function declarations  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Fixing busted citext function declarations
List pgsql-hackers
On Tue, May 5, 2015 at 10:20 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Alvaro Herrera <alvherre@2ndquadrant.com> writes:
> (I think it is possible that the behavior change is actually problematic
> as opposed to just behaving differently.  For instance, if the function
> is used in a subselect that's expected to return only one row, and it
> suddenly starts returning more, the query would raise an error.  Seems
> better to err on the side of caution.)

Yeah.  Also, I realized from the citext regression tests that there's a
behavioral change even if you *don't* use the 'g' flag: the previous
behavior was to return a null on no match, but now you get zero rows out
instead.  That's a fairly significant change.

> I think we should keep the 1.0 version this time, in back branches.

Agreed.  Maybe we shouldn't even make 1.1 the default in the back
branches.


​Does 9.0 get different treatment?​

If (I'm not sure this is the case - or must be...) a pg_dump/pg_restore sequence against a back-branch database installs the default version of the extension for that PostgreSQL version I would agree; and, to clarify, we would still provide the ability to upgrade to citext-1.1 in back-branches.

Alvaro >> and it (1.0) wouldn't be provided in the master branch

Why wouldn't it?  The whole point of versioning is to mark a release as stable/immutable and therefore eliminate any maintenance burden by simply refusing to maintain it.  There is no maintainability reason to avoid shipping the previous versions that I can think of if the extension infrastructure works as advertised.

Is there anywhere besides the source code that a user can read how extensions and pg_dump/pg_restore inter-operate in this manner?  Neither pg_dump/restore nor CREATE EXTENSION cover the topic and there isn't a chapter called "upgrading" that would be a nice place to put such information...

David J​


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Fixing busted citext function declarations
Next
From: Tom Lane
Date:
Subject: Re: Fixing busted citext function declarations