Thread: Phantom user in db--'128'
I posted this earlier, and got no responses.
While using pg_dump and pg_restore (or attempting to restore, more precisely), the process failed because of a missing user, user '128'. I never created such a user, and when going to Privileges, such a user does not exist in the list. However, while going out and checking some of the tables, this user shows up as a user with privileges on them (however, not on all tables). How do I get rid of this user? And how do I ensure that it doesn't get created again? I'd like to understand what is really going on before hacking the user table.
Thanks in advance.
Mark Taber
State of California
Department of Finance
Infrastructure & Architecture
916.323.3104 x 2945
mark.taber@dof.ca.gov
"Taber, Mark" <Mark.Taber@dof.ca.gov> writes: > While using pg_dump and pg_restore (or attempting to restore, more > precisely), the process failed because of a missing user, user '128'. I > never created such a user, and when going to Privileges, such a user does > not exist in the list. However, while going out and checking some of the > tables, this user shows up as a user with privileges on them (however, not > on all tables). How do I get rid of this user? And how do I ensure that it > doesn't get created again? I'd like to understand what is really going on You had a user with usesysid 128, whom you dropped, but he still had privileges on some tables --- DROP USER is not good about detecting dangling references. I'd suggest recreating the user (CREATE USER foo WITH SYSID 128) and then being careful to REVOKE all his privileges before you drop him again. Or you can just manually edit the dump file to remove the attempts to GRANT him privileges. regards, tom lane
Thanks! Worked like a charm. Mark Taber State of California Department of Finance Infrastructure & Architecture 916.323.3104 x 2945 mark.taber@dof.ca.gov -----Original Message----- From: Tom Lane [mailto:tgl@sss.pgh.pa.us] Sent: Friday, November 19, 2004 7:42 AM To: Taber, Mark Cc: pgsql-general@postgresql.org Subject: Re: [GENERAL] Phantom user in db--'128' "Taber, Mark" <Mark.Taber@dof.ca.gov> writes: > While using pg_dump and pg_restore (or attempting to restore, more > precisely), the process failed because of a missing user, user '128'. > I never created such a user, and when going to Privileges, such a user > does not exist in the list. However, while going out and checking some > of the tables, this user shows up as a user with privileges on them > (however, not on all tables). How do I get rid of this user? And how > do I ensure that it doesn't get created again? I'd like to understand > what is really going on You had a user with usesysid 128, whom you dropped, but he still had privileges on some tables --- DROP USER is not good about detecting dangling references. I'd suggest recreating the user (CREATE USER foo WITH SYSID 128) and then being careful to REVOKE all his privileges before you drop him again. Or you can just manually edit the dump file to remove the attempts to GRANT him privileges. regards, tom lane