"David G. Johnston" <david.g.johnston@gmail.com> writes:
> On Mon, Apr 15, 2024 at 8:15 PM David G. Johnston <
> david.g.johnston@gmail.com> wrote:
>> tl/dr - alter extension ... set schema ... needs to update
>> pg_extension.extnamespace if the named schema matches the current value in
>> the control file. Otherwise, extension authors can and have introduced a
>> dump/restore failure mode that the DBA can only fix via direct catalog
>> manipulation.
> Tom's recent bug regarding alter extension reminded me that no has
> expressed an opinion on this one.
A quick test says that ALTER EXTENSION SET SCHEMA *does* update
pg_extension.extnamespace to the new schema.
Re-reading your original message, I'm of the opinion that pg_cron's
control files are probably broken. If they are changing from
relocatable to not, then they need to specify that property in
a version-specific control file not the main one. Maybe there's
something else that needs to happen in our code, but updating
extnamespace doesn't seem to be it. Also, I do see code that
purports to cope with a version-related update of the relocatable
flag --- whether we test that, I'm not sure, but there's not
something obviously missing.
regards, tom lane