relation "pg_user" does not exist

Started by Rick Romanabout 21 years ago4 messagesbugs
Jump to latest
#1Rick Roman
rick@cotse.net

I am running PostgreSQL 7.4.7 on Fedora Core 3. I get a lot of
warnings from pgAdmin III:

relation "pg_user" does not exist

but it doesn't seem to prevent me from doing most operations. More
seriously, I cannot execute a backup. I get the following message:

*****************************************
/usr/bin/pg_dump -i -h localhost -p 5432 -U postgres -F c -b -v -f
"testbackupfile" rickdb
pg_dump: saving encoding
pg_dump: saving database definition
pg_dump: SQL command failed
pg_dump: Error message from server: ERROR: relation "pg_user" does
not exist
pg_dump: The command was: SELECT (SELECT usename FROM pg_user WHERE
usesysid = datdba) as dba, pg_encoding_to_char(encoding) as encoding,
datpath FROM pg_database WHERE datname = 'rickdb'
pg_dump: *** aborted because of error

Process returned exit code 1.
******************************************

Indeed, if I log in as -U postgres -d template1 and select * from
pg_user, the view does not exist. Anybody have an idea why this view
was not created on install and what I can do to correct the situation?

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Rick Roman (#1)
Re: relation "pg_user" does not exist

"Rick Roman" <rick@cotse.net> writes:

I am running PostgreSQL 7.4.7 on Fedora Core 3. I get a lot of
warnings from pgAdmin III:

relation "pg_user" does not exist

You've probably been bit by the problems with SELinux disabling parts of
the initdb script. You'll need to re-initdb after installing the latest
RPMs (postgresql 7.4.7-3.FC3.1, not sure which selinux-policy-targeted
is current). Alternatively, you can shut off SELinux enforcement while
running the older initdb.

regards, tom lane

#3Rick Roman
rick@cotse.net
In reply to: Tom Lane (#2)
Re: relation "pg_user" does not exist

"Rick Roman" <rick@cotse.net> writes:

I am running PostgreSQL 7.4.7 on Fedora Core 3. I get a lot of
warnings from pgAdmin III:

relation "pg_user" does not exist

You've probably been bit by the problems with SELinux disabling parts
of
the initdb script. You'll need to re-initdb after installing the
latest
RPMs (postgresql 7.4.7-3.FC3.1, not sure which selinux-policy-targeted
is current). Alternatively, you can shut off SELinux enforcement
while
running the older initdb.

regards, tom lane

It looks like 7.4.7 is what's currently in distribution on up2date, so
I tried running initdb with SE Linux off with my current 7.4.7. This
worked fine except that, if I turn SE Linux back on, the Postgres
server will no longer start up.

I guess I'll just leave SE Linux off until 7.4.7-3 is available. It's
just a dev box anyway. Thanks for your help!

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Rick Roman (#3)
Re: relation "pg_user" does not exist

"Rick Roman" <rick@cotse.net> writes:

You'll need to re-initdb after installing the latest
RPMs (postgresql 7.4.7-3.FC3.1, not sure which selinux-policy-targeted
is current).

It looks like 7.4.7 is what's currently in distribution on up2date,

Dunno what your up2date tool is looking at, but 7.4.7-3.FC3.1 was
pushed to the Fedora download servers on 22-Feb. Look for instance at
http://download.fedora.redhat.com/pub/fedora/linux/core/updates/3/i386/

Personally I use "yum" not up2date to track Fedora 3 package updates.
I am not sure that anyone is maintaining an up2date feed for Fedora.

regards, tom lane