Vacuum problem

Started by Peter Darleyover 23 years ago5 messagesgeneral
Jump to latest
#1Peter Darley
pdarley@kinesis-cem.com

Friends,
I have a problem with my database: whenever I do a vacuum I get a message
that reads:

NOTICE: RelationBuildDesc: can't open pg_temp_25807_9: No such file or
directory
ERROR: _mdfd_getrelnfd: cannot open relation pg_temp_25807_9: No such file
or directory

It seems that a temp table was dropped from the db without being deleted
from pg_class.

My questions are these: Is this an indication that there's something
horribly wrong with my db? If I just delete the record from pg_class
(delete from pg_class where relname='pg_temp_25807_9';) will I cause more
harm to the db or fix the problem? If I do have a big problem, what
suggestions do people have for resolving it?

Thanks,
Peter Darley

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Darley (#1)
Re: Vacuum problem

"Peter Darley" <pdarley@kinesis-cem.com> writes:

I have a problem with my database: whenever I do a vacuum I get a message
that reads:

NOTICE: RelationBuildDesc: can't open pg_temp_25807_9: No such file or
directory
ERROR: _mdfd_getrelnfd: cannot open relation pg_temp_25807_9: No such file
or directory

It seems that a temp table was dropped from the db without being deleted
from pg_class.

Hmm. What PG version are you running?

My questions are these: Is this an indication that there's something
horribly wrong with my db? If I just delete the record from pg_class
(delete from pg_class where relname='pg_temp_25807_9';) will I cause more
harm to the db or fix the problem?

I'd say delete it, and also delete the similarly-named row in pg_type.
If you wanted to be really rigorous you could try cleaning out the
related rows in pg_attribute and other system tables, but getting rid
of the named pg_class and pg_type rows is probably enough to forestall
any problems.

regards, tom lane

#3Peter Darley
pdarley@kinesis-cem.com
In reply to: Tom Lane (#2)
Re: Vacuum problem

Tom,
Sorry, I always forget to post the version. I'm running 7.2.1 on Linux.
I deleted the records from pg_class and pg_type, and vacuum succeeded
without any errors.
Thanks a bunch,
Peter Darley

-----Original Message-----
From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
Sent: Monday, August 12, 2002 4:31 PM
To: Peter Darley
Cc: Pgsql-General
Subject: Re: [GENERAL] Vacuum problem

"Peter Darley" <pdarley@kinesis-cem.com> writes:

I have a problem with my database: whenever I do a vacuum I get a message
that reads:

NOTICE: RelationBuildDesc: can't open pg_temp_25807_9: No such file or
directory
ERROR: _mdfd_getrelnfd: cannot open relation pg_temp_25807_9: No such

file

or directory

It seems that a temp table was dropped from the db without being deleted
from pg_class.

Hmm. What PG version are you running?

My questions are these: Is this an indication that there's something
horribly wrong with my db? If I just delete the record from pg_class
(delete from pg_class where relname='pg_temp_25807_9';) will I cause more
harm to the db or fix the problem?

I'd say delete it, and also delete the similarly-named row in pg_type.
If you wanted to be really rigorous you could try cleaning out the
related rows in pg_attribute and other system tables, but getting rid
of the named pg_class and pg_type rows is probably enough to forestall
any problems.

regards, tom lane

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Darley (#3)
Re: Vacuum problem

"Peter Darley" <pdarley@kinesis-cem.com> writes:

Sorry, I always forget to post the version. I'm running 7.2.1 on Linux.

Drat ... I was hoping it was old ;-)

I deleted the records from pg_class and pg_type, and vacuum succeeded
without any errors.

I'm glad you got out of the problem, but you shouldn't have got into it.
There's a bug there somewhere, and I need more data to try to look for
it. Have you got any ideas about what might have triggered this
situation --- for example, were there any database crashes recently?
System crashes? Odd behavior of any kind?

regards, tom lane

#5Peter Darley
pdarley@kinesis-cem.com
In reply to: Tom Lane (#4)
Re: Vacuum problem

Tom,
The machine did have a crash recently. The scsi controller stopped
responding, and I was unable to shut down the machine correctly. I
eventually just turned it off. When it came back up and I started
Postgresql everything seemed OK. I don't think that this problem occurred
then however. I believe that it started after that, tho I can't be totally
sure. I seem to remember doing a full vacuum after the machine came back up
and not getting any errors.
I haven't been able to troubleshoot and replace any bad hardware yet.
Thanks,
Peter Darley

-----Original Message-----
From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
Sent: Monday, August 12, 2002 6:51 PM
To: Peter Darley
Cc: Pgsql-General
Subject: Re: [GENERAL] Vacuum problem

"Peter Darley" <pdarley@kinesis-cem.com> writes:

Sorry, I always forget to post the version. I'm running 7.2.1 on Linux.

Drat ... I was hoping it was old ;-)

I deleted the records from pg_class and pg_type, and vacuum succeeded
without any errors.

I'm glad you got out of the problem, but you shouldn't have got into it.
There's a bug there somewhere, and I need more data to try to look for
it. Have you got any ideas about what might have triggered this
situation --- for example, were there any database crashes recently?
System crashes? Odd behavior of any kind?

regards, tom lane