WAL records

Started by Looserof7over 6 years ago2 messages
#1Looserof7
looserof7@gmail.com

I have started to learn postgresql. While going through the WAL dump saw
the below records,

rmgr: Heap2 len (rec/tot): 60/ 60, tx: 0, lsn:
4F/CFF1F0F8, prev 4F/CFF1EB70, desc: CLEAN remxid 0, blkref #0: rel
1663/16385/1259 blk 1301

rmgr: Heap2 len (rec/tot): 60/ 60, tx: 0, lsn:
4F/CF26F808, prev 4F/CF26F7C0, desc: CLEAN remxid 0, blkref #0: rel
1663/16385/3312732 blk 2634

rmgr: Heap2 len (rec/tot): 56/ 56, tx: 79718109, lsn:
4F/CF96D970, prev 4F/CF96D930, desc: CLEAN remxid 0, blkref #0: rel
1663/16385/209012 blk 6621

Wanted to know more about these,

1. Are "CLEAN" vacuum records ? If not, what are those ?
2. Why is the transaction id "0" ?
3. What does these records do ?

Postgresql version : 10.6

#2Tomas Vondra
tomas.vondra@2ndquadrant.com
In reply to: Looserof7 (#1)
Re: WAL records

On Thu, Sep 26, 2019 at 11:14:53AM +0530, Looserof7 wrote:

I have started to learn postgresql. While going through the WAL dump saw
the below records,

rmgr: Heap2 len (rec/tot): 60/ 60, tx: 0, lsn:
4F/CFF1F0F8, prev 4F/CFF1EB70, desc: CLEAN remxid 0, blkref #0: rel
1663/16385/1259 blk 1301

rmgr: Heap2 len (rec/tot): 60/ 60, tx: 0, lsn:
4F/CF26F808, prev 4F/CF26F7C0, desc: CLEAN remxid 0, blkref #0: rel
1663/16385/3312732 blk 2634

rmgr: Heap2 len (rec/tot): 56/ 56, tx: 79718109, lsn:
4F/CF96D970, prev 4F/CF96D930, desc: CLEAN remxid 0, blkref #0: rel
1663/16385/209012 blk 6621

Wanted to know more about these,

1. Are "CLEAN" vacuum records ? If not, what are those ?
2. Why is the transaction id "0" ?
3. What does these records do ?

Postgresql version : 10.6

It's an information for the replica (hot-standby) with information about
recent data removed from the table by vacuum, so that the standby may
abort user queries that'd need the data etc. See heap_xlog_clean()
function in heapam.c.

regards

--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services