Sound like this is actually an alias for DROP ROLE
.
You have to explicitly drop any privileges associated with that user, also to move its ownership to other roles (or drop the object).
reassign owned by <olduser> to <nnewuser> ;
and then
drop owned by <olduser>;
The latter will remove any privileges granted to the user.
Bach-Nga
No one in this world is pure and perfect. If you avoid people for their mistakes you will be alone. So judge less, love, and forgive more.
No one in this world is pure and perfect. If you avoid people for their mistakes you will be alone. So judge less, love, and forgive more.
To call him a dog hardly seems to do him justice though in as much as he had four legs, a tail, and barked, I admit he was, to all outward appearances. But to those who knew him well, he was a perfect gentleman (Hermione Gingold)
**Live simply **Love generously **Care deeply **Speak kindly.
*** Genuinely rich *** Faithful talent *** Sharing success
On Saturday, September 16, 2023 at 02:28:13 PM EDT, Koen De Groote <kdg.dev@xxxxxxxxx> wrote:
All,
I am trying to set up a new user for a client application, and thus want to remove the old user afterward.
The steps are:
1/ create the new user
2/ give the new user all priviliges on database, table, sequence, function and procedures, just like the old user
3/ deply client application with the new user and credentials
3/ Swap ownership of the databases
4/ Remove privileges from the old user
5/ Drop the old user
But I'm getting stuck on one last error message:
ERROR: role "X" cannot be dropped because some objects depend on it
DETAIL: privileges for default privileges on new functions belonging to role postgres in schema public
DETAIL: privileges for default privileges on new functions belonging to role postgres in schema public
The "new functions" bit is confusing. I've swapped over all the current functions, but cannot seem to find the appropriate table for privileges on new functions.
What am I missing here?
Regards,
Koen De Groote