Freezing is not WAL-logged

From: "Heikki Linnakangas" <heikki(at)enterprisedb(dot)com>
To: <pgsql-bugs(at)postgresql(dot)org>
Subject: Freezing is not WAL-logged
Date: 2006-10-18 13:39:16
Message-ID: 45362E84.1060107@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

I just noticed that freezing a tuple (in vacuumlazy.c) is not
WAL-logged. That leads to this scenario:

postgres=# CREATE TABLE foo (bar int);
CREATE TABLE
postgres=# INSERT INTO foo VALUES (1);
INSERT 0 1
postgres=# SELECT xmin,xmax, bar FROM foo;
xmin | xmax | bar
------+------+-----
669 | 0 | 1
(1 row)

postgres=# VACUUM FREEZE foo;
VACUUM

killall -9 postgres + restart

postgres=# SELECT xmin,xmax, bar FROM foo;
xmin | xmax | bar
------+------+-----
669 | 0 | 1
(1 row)

postgres=# SELECT relminxid FROM pg_class WHERE relname='foo';
relminxid
-----------
672
(1 row)

It looks like a bug to me.

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

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2006-10-18 18:08:36 Re: BUG #2694: Memory allocation error when selecting array
Previous Message Franz.Rasper 2006-10-18 12:56:53 Re: corruption since 7.4.13 update ?