Re: empty role names in pg_dumpall output - Mailing list pgsql-general

From Tom Lane
Subject Re: empty role names in pg_dumpall output
Date
Msg-id 22271.1335412592@sss.pgh.pa.us
Whole thread Raw
In response to empty role names in pg_dumpall output  (Filip Rembiałkowski <filip.rembialkowski@gmail.com>)
Responses Re: empty role names in pg_dumpall output  (Filip Rembiałkowski <filip.rembialkowski@gmail.com>)
List pgsql-general
=?UTF-8?Q?Filip_Rembia=C5=82kowski?= <filip.rembialkowski@gmail.com> writes:
> PostgreSQL 9.0.4

> I have this in pg_dumpall -g output (non-empty role names changed):

> GRANT "" TO a  GRANTED BY postgres;
> GRANT "" TO b GRANTED BY c;
> GRANT "" TO b GRANTED BY c;
> GRANT "" TO b GRANTED BY c;
> GRANT "" TO b GRANTED BY c;
> GRANT "" TO "" GRANTED BY c;
> GRANT "" TO "" GRANTED BY postgres;
> GRANT "" TO "" GRANTED BY postgres;

Hmm.  A look at the code in pg_dumpall suggests that the problem is
unmatched entries in pg_auth_members, ie this query:

SELECT ur.rolname AS roleid
FROM pg_auth_members a LEFT JOIN pg_authid ur on ur.oid = a.roleid

is returning some null results.  You might look into that catalog
and see if you can figure out what happened.

As far as making the problem go away is concerned, deleting the bogus
pg_auth_members rows should do it; but it would be a good idea to try to
figure out what happened first.

            regards, tom lane

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Bug? Query plans / EXPLAIN using gigabytes of memory
Next
From: Toby Corkindale
Date:
Subject: Re: Bug? Query plans / EXPLAIN using gigabytes of memory