Re: array_cat anycompatible change is breaking xversion upgrade tests (v14 release notes)
Justin Pryzby <pryzby@telsasoft.com>
From: Justin Pryzby <pryzby@telsasoft.com>
To: Bruce Momjian <bruce@momjian.us>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2021-06-08T22:56:18Z
Lists: pgsql-hackers
@Bruce: Would you add something about this to the release notes before beta2? I added it as an OpenItem. On Tue, May 25, 2021 at 11:14:58AM -0500, Justin Pryzby wrote: > On Thu, May 20, 2021 at 07:35:10PM -0400, Tom Lane wrote: > > Justin Pryzby <pryzby@telsasoft.com> writes: > > > On Wed, Nov 04, 2020 at 07:43:51PM -0500, Tom Lane wrote: > > >> As was discussed in the thread leading up to that commit, modifying the > > >> signature of array_cat and friends could break user-defined operators > > >> and aggregates based on those functions. It seems to me that the > > >> usability gain from this change is worth that cost, but it is causing > > >> an issue for xversion tests. > > > > > But I think this should be called out as an incompatible change in the release > > > notes. > > > > If it was not, yes it should be. > > @Bruce, I propose: > > Some system functions are changed to accept "anycompatiblearray" arguments. > This causes failures when restoring a database backup or running pg_restore if > there were aggregate functions defined using those functions with their > original argument types. > > Such aggregate functions should be dropped before upgrade/restore and then > re-created afterwards using the "anycompatible" functions. The affected > functions are: array_append, array_prepend, array_cat, array_position, > array_positions, array_remove, array_replace, and width_bucket.
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