Florian Pflug wrote: > Hi > > I've just ran into a problem while upgrading from 8.4 to 9.0. > > pg_upgrade aborted during the step "Adding support functions to new > cluster" with "ERROR: permission denied for language c" error. > Unfortunately, the log didn't include the name of the database where > the error occurred, so it took me a while to figure out that the culprit > was a "ALTER DATABASE SET ROLE = <non-superuser>" I had done on one of > my databases, which effectively prevented pg_upgrade from connection > with superuser privileges. > > While one could argue that this behaviour is perfectly consistent, I > believe most users will expect pg_upgrade (and to a lesser extent also > pg_dump and pg_restore) to be unaffected by such settings. > > Should we provide a way (for super-users only, of course) to skip > per-database/per-role settings when connecting?
I think pg_dumpall would have failed with this setup too, so I don't see this as a pg_upgrade bug, nor something that I am willing to risk adding to pg_upgrade. Perhaps the error report can be improved. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers