| From: | Heikki Linnakangas <heikki(at)enterprisedb(dot)com> |
|---|---|
| To: | pgsql-patches(at)postgresql(dot)org |
| Subject: | WAL logging freezing |
| Date: | 2006-10-24 07:20:13 |
| Message-ID: | 453DBEAD.3080201@enterprisedb.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers pgsql-patches |
Here's a patch for WAL logging tuple freezes in vacuum, per discussion
on pgsql-bugs.
This patch is against CVS head. Should this be backported to stable
branches? I think it should.
After writing the patch, I realized that it needs some thought if
backported, because WAL records of removing tuples and freezing tuples
share the same heapam opcode XLOG_HEAP_CLEAN, and are only
differentiated by setting a flag. If we applied the patch as it is, and
for some reason someone replayed a WAL log generated by a newer version,
with the patch, with an older version, without the patch, the older
version would interpret the freeze WAL records as dead tuple removals,
and remove live records. I would've liked to give freezing a new opcode,
but we've ran out of them (see htup.h).
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
| Attachment | Content-Type | Size |
|---|---|---|
| logfreezes.diff | text/plain | 11.9 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Markus Schiltknecht | 2006-10-24 08:26:39 | Re: Replication documentation addition |
| Previous Message | Bruce Momjian | 2006-10-24 04:20:40 | Replication documentation addition |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Hitoshi Harada | 2006-10-24 09:52:01 | Re: [PATCHES] smartvacuum() instead of autovacuum |
| Previous Message | Magnus Hagander | 2006-10-24 06:05:28 | Re: BUG #2712: could not fsync segment: Permission |