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
