On 11/4/20 4:10 PM, Tom Lane wrote: > Declare assorted array functions using anycompatible not anyelement. > > Convert array_append, array_prepend, array_cat, array_position, > array_positions, array_remove, array_replace, and width_bucket > to use anycompatiblearray. This is a simple extension of commit > 5c292e6b9 to hit some other places where there's a pretty obvious > gain in usability from doing so. > > Ideally we'd also modify other functions taking multiple old-style > polymorphic arguments. But most of the remainder are tied into one > or more operator classes, making any such change a much larger can of > worms than I desire to open right now. > > Discussion: > https://postgr.es/m/[email protected] >
This patch broke cross-version pg_upgrade testing. I have cured crake for the moment by having it execute this in the source database: drop aggregate if exists public.array_cat_accum(anyarray); drop aggregate if exists public.first_el_agg_any(anyelement); But I wonder if we really want to make it impossible to upgrade databases with aggregates that contain these functions? cheers andrew
