"James Wilford" <jwilford@mistral.net> writes:
> This shows 2 entries for "misp" with different OIDs. Only the first one
> (oid 31238435) exists in the data/base directory. So I tried to delete
> the other row but it doesn't work:
> misp=# DELETE from pg_database where oid = 6790290;
> DELETE 0
That's pretty strange. I wonder if the index on pg_database.oid is
corrupt. It certainly seems like the one on datname must be corrupt,
else it should have disallowed two such entries.
You could try deleting the bogus row by selecting it by ctid instead
of oid. Also see if you can REINDEX pg_database (this will only work
in standalone mode I think).
What PG version is this exactly?
regards, tom lane