Re: Another possible corruption bug in 9.3.2 or possibly a known MultiXact problem?

From: Greg Stark <stark(at)mit(dot)edu>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Andres Freund <andres(at)2ndquadrant(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Peter Geoghegan <pg(at)heroku(dot)com>
Subject: Re: Another possible corruption bug in 9.3.2 or possibly a known MultiXact problem?
Date: 2014-02-27 23:41:08
Message-ID: CAM-w4HP8fHERDtFwsqTPpaS=JOf6LkEWrp7E1zZN7xZ6g3_DTA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Though I notice something I can't understand here.

After activating the new clone subsequent attempts to select rows from
the page bump the LSN, presumably due to touching hint bits (since the
prune xid hasn't changed). But the checksum hasn't changed even after
running CHECKPOINT.

How is it possible for the LSN to get updated without changing the checksum?

postgres=# select (page_header(get_raw_page('users',13065))).* ;
lsn | checksum | flags | lower | upper | special | pagesize |
version | prune_xid
-------------+----------+-------+-------+-------+---------+----------+---------+-----------
FD/330EC998 | -25547 | 1 | 152 | 2576 | 8192 | 8192 |
4 | 5638282
(1 row)

postgres=# select (page_header(get_raw_page('users',13065))).* ;
lsn | checksum | flags | lower | upper | special | pagesize |
version | prune_xid
-------------+----------+-------+-------+-------+---------+----------+---------+-----------
FD/33140160 | -25547 | 1 | 152 | 2576 | 8192 | 8192 |
4 | 5638282
(1 row)

postgres=# select (page_header(get_raw_page('users',13065))).* ;
lsn | checksum | flags | lower | upper | special | pagesize |
version | prune_xid
-------------+----------+-------+-------+-------+---------+----------+---------+-----------
FD/350016E8 | -25547 | 1 | 152 | 2576 | 8192 | 8192 |
4 | 5638282
(1 row)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Wang, Jing 2014-02-28 00:10:55 pg_dump reporing version of server & pg_dump as comments in the output
Previous Message Tom Lane 2014-02-27 22:47:16 Re: UNION ALL on partitioned tables won't use indices.