Robert Haas <> writes:
> On Fri, Jul 29, 2011 at 9:55 AM, Tom Lane <> wrote:
>> The thing that was bizarre about the one instance in the buildfarm was
>> that the error was persistent, ie, once a session had failed all its
>> subsequent attempts to access pg_class failed too.

> I was thinking more along the lines of a failure while processing a
> sinval message emitted by the REINDEX.  The sinval message doesn't get
> fully processed and therefore we get confused about what the
> relfilenode is for pg_class.  If that happened for any other relation,
> we could recover by scanning pg_class.  But if it happens for pg_class
> or pg_class_oid_index, we're toast, because we can't scan them without
> knowing what relfilenode to open.

Well, no, because the ScanPgRelation call is not failing internally.
It's performing a seqscan of pg_class and not finding a matching tuple.

You could hypothesize about maybe an sinval message got missed leading
us to scan the old (pre-VAC-FULL) copy of pg_class, but that still
wouldn't explain how come we can't find a valid-looking entry for
pg_class_oid_index in it.

Tis a puzzlement.

                        regards, tom lane

Sent via pgsql-hackers mailing list (
To make changes to your subscription:

Reply via email to