Bruce Momjian <br...@momjian.us> writes: > + > + /* > + * We unconditionally create the extension, so we must > drop it if it > + * exists. This could happen if the user deleted > 'plpgsql' and then > + * readded it, causing its oid to be greater than > FirstNormalObjectId. > + */ > + appendPQExpBuffer(q, "DROP EXTENSION IF EXISTS %s;\n", > qextname);
This doesn't seem like anything but a wart :-(. It's unlike the behavior for every other kind of object, it introduces the inconsistent behavior even in non-binary-upgrade cases, and it does nothing at all to address the points I made about reproducing the previous state in cases where the admin removed the language or changed its permissions. regards, tom lane -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs