Re: BUG #5928: PD_ALL_VISIBLE flag incorrectly set warning messages

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: BUG #5928: PD_ALL_VISIBLE flag incorrectly set warning messages
Дата
Msg-id 4D7F013F.9010309@enterprisedb.com
обсуждение исходный текст
Ответ на BUG #5928: PD_ALL_VISIBLE flag incorrectly set warning messages  ("Lane Stevens" <lane@mobilsense.com>)
Список pgsql-bugs
On 15.03.2011 02:01, Lane Stevens wrote:
>
> The following bug has been logged online:
>
> Bug reference:      5928
> Logged by:          Lane Stevens
> Email address:      lane@mobilsense.com
> PostgreSQL version: 8.4.4
> Operating system:   CentOS
> Description:        PD_ALL_VISIBLE flag incorrectly set warning messages
> Details:
>
> A series of messages similar to the following were logged:
>
> pgsql.log:Mar 14 16:38:44 bo01 preprod[5462]: [2-1] eval25WARNING:
> PD_ALL_VISIBLE flag was incorrectly set in relation "pg_statistic" page 45
>
> This happened at least one other time on Jan 10 with the same version of the
> database.  So far I have been unable to replicate the error.
>
> Kernel is:  2.6.18-164.15.1.el5
> postgresql is:  postgresql-8.4.4-2PGDG.el5

This is a known issue, fixed recently in the git repository. See:

http://archives.postgresql.org/message-id/4D75E201.20402@enterprisedb.com

and the fix:

commit b42225c101e61afdc9b4f5873654bc1e0c9f9179
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date:   Tue Mar 8 20:13:52 2011 +0200

     Don't throw a warning if vacuum sees PD_ALL_VISIBLE flag set on a
page that
     contains newly-inserted tuples that according to our OldestXmin are not
     yet visible to everyone. The value returned by GetOldestXmin() is
conservative,
     and it can move backwards on repeated calls, so if we see that
contradiction
     between the PD_ALL_VISIBLE flag and status of tuples on the page,
we have to
     assume it's because an earlier vacuum calculated a higher
OldestXmin value,
     and all the tuples really are visible to everyone.

     We have received several reports of this bug, with the
"PD_ALL_VISIBLE flag
     was incorrectly set in relation ..." warning appearing in logs. We were
     finally able to hunt it down with David Gould's help to run extra
diagnostics
     in an environment where this happened frequently.

     Also reword the warning, per Robert Haas' suggestion, to not imply
that the
     PD_ALL_VISIBLE flag is necessarily at fault, as it might also be a
symptom
     of corruption on a tuple header.

     Backpatch to 8.4, where the PD_ALL_VISIBLE flag was introduced.


This fix will be included in the next version (8.4.8). Assuming you're
seeing the same issue, the warning is harmless and can be ignored.

--
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com

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

Предыдущее
От: "Lane Stevens"
Дата:
Сообщение: BUG #5928: PD_ALL_VISIBLE flag incorrectly set warning messages
Следующее
От: "Tambet Matiisen"
Дата:
Сообщение: BUG #5929: ERROR: found toasted toast chunk for toast value 260340218 in pg_toast_260339342