Re: error: could not find pg_class tuple for index 2662
От | Tom Lane |
---|---|
Тема | Re: error: could not find pg_class tuple for index 2662 |
Дата | |
Msg-id | 26224.1311953222@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: error: could not find pg_class tuple for index 2662 (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: error: could not find pg_class tuple for index 2662
|
Список | pgsql-hackers |
Robert Haas <robertmhaas@gmail.com> writes: > On Fri, Jul 29, 2011 at 9:55 AM, Tom Lane <tgl@sss.pgh.pa.us> 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
В списке pgsql-hackers по дате отправления: