Skip site navigation (1) Skip section navigation (2)

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 (view raw or flat)
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

pgsql-bugs by date

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

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group