Re: Vacuum error message

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Vacuum error message
Дата
Msg-id 19779.1345229220@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Vacuum error message  (Raymond McKolay <RMcKolay@brittenbanners.com>)
Список pgsql-novice
Raymond McKolay <RMcKolay@brittenbanners.com> writes:
> I am new to postgresql and hope this is the correct list to mail to.
> I have a DB that is out of control huge and I tried running a Vacuum on it and received the following error
> Error: could not read block 512591 of relation 1663/16396/16768: Result too large

That's really bizarre --- it apparently means that read() returned
ERANGE, which is not a documented error code for that system call.

What platform are you on, and what filesystem is the database stored on,
and what PG version is this anyway?

If it's OS X, we have heard before of ERANGE occurring on corrupted HFS+
filesystems:
http://archives.postgresql.org/pgsql-hackers/2012-05/msg00745.php
... or at least, we theorized that this was a symptom of filesystem
corruption, but I don't see anything in the thread about whether that
was proven to be true or not.

If it is a filesystem problem, you'd probably get the same error from
(say) attempting to copy that file to someplace else --- I'd suggest
trying that as a first diagnostic experiment.

As for recovery, if you're really lucky this is just a kernel bug that
has been fixed in some more recent kernel ... are you up to date on OS
updates?  Otherwise, depending on how widespread the damage is, you
might be forced to revert to your last backups (I hope you have some,
if the data is valuable).  But you could try extracting what you can
first.  There's information about dealing with data corruption on our
wiki and in our mailing list archives.

            regards, tom lane


В списке pgsql-novice по дате отправления:

Предыдущее
От: "Kevin Grittner"
Дата:
Сообщение: Re: Vacuum error message
Следующее
От: Raymond McKolay
Дата:
Сообщение: Re: Vacuum error message