Re: array_cat anycompatible change is breaking xversion upgrade tests
x4mmm@yandex-team.ru
From: Andrey Borodin <x4mmm@yandex-team.ru>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Justin Pryzby <pryzby@telsasoft.com>,
Andrew Dunstan <andrew@dunslane.net>,
pgsql-hackers@lists.postgresql.org,
Bruce Momjian <bruce@momjian.us>
Date: 2022-06-24T18:28:31Z
Lists: pgsql-hackers
> On 24 Jun 2022, at 18:30, Justin Pryzby <pryzby@telsasoft.com> wrote: > > On Fri, Jun 24, 2022 at 04:09:46PM +0500, Andrey Borodin wrote: >> Hi everyone! >> >> Sorry for bumping old thread. > > Please find this newer thread+patch here ;) > https://www.postgresql.org/message-id/20220614230949.GX29853@telsasoft.com Oops. Let's discard my patch and I'll review yours. Many thanks for fixing this stuff :) > On 24 Jun 2022, at 19:06, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > Justin Pryzby <pryzby@telsasoft.com> writes: >> I realized that my latest patch would break upgrades from old servers, which do >> not have array_position/s nor width_bucket, so ::reprocedure would fail. Maybe >> Andrey's way is better (checking proname rather than its OID). > > proname is dangerous, because there's nothing stopping users from > adding more functions with the same name. > > Just use a server-version-dependent list of regprocedure OIDs. Server-version-dependent list of oids seems more error prone. I think we can just check proname by the list and oid < 16384. Thanks! Best regards, Andrey Borodin.
Commits
-
doc: add PG 14 relnote item about array function references
- 25dfb5a831a1 14.0 landed
-
Work around cross-version-upgrade issues created by commit 9e38c2bb5.
- d3d4f7233a3e 11.11 landed
- cea97d98f167 9.6.21 landed
- 97f73a978fc1 14.0 landed
- 6c91e28224f6 9.5.25 landed
- 5ce51f8280d3 12.6 landed
- 5c456d308071 13.2 landed
- 253f02c46f0e 10.16 landed