Re: COPY FREEZE and setting PD_ALL_VISIBLE/visibility map bits
Tatsuo Ishii <ishii@sraoss.co.jp>
From: Tatsuo Ishii <ishii@sraoss.co.jp>
To: lubennikovaav@gmail.com
Cc: pgsql-hackers@lists.postgresql.org, pavan.deolasee@gmail.com,
ibrar.ahmad@gmail.com
Date: 2020-10-28T05:46:53Z
Lists: pgsql-hackers
> Status update for a commitfest entry. > > This patch is ReadyForCommitter. It applies and passes the CI. There are no unanswered questions in the discussion. > > The discussion started in 2015 with a patch by Jeff Janes. Later it was revived by Pavan Deolasee. After it was picked up by Ibrar Ahmed and finally, it was rewritten by me, so I moved myself from reviewers to authors as well. > > The latest version was reviewed and tested by Ibrar Ahmed. The patch doesn't affect COPY FREEZE performance and significantly decreases the time of the following VACUUM. I have tested the patch on my laptop (mem 16GB, SSD 512GB) using the data introduced in up thread and saw that VACCUM after COPY FREEZE is nearly 60 times faster than current master branch. Quite impressive. By the way, I noticed following comment: + /* + * vmbuffer should be already pinned by RelationGetBufferForTuple, + * Though, it's fine if is not. all_frozen is just an optimization. + */ could be enhanced like below. What do you think? + /* + * vmbuffer should be already pinned by RelationGetBufferForTuple. + * Though, it's fine if it is not. all_frozen is just an optimization. + */ Best regards, -- Tatsuo Ishii SRA OSS, Inc. Japan English: http://www.sraoss.co.jp/index_en.php Japanese:http://www.sraoss.co.jp
Commits
-
Fix COPY FREEZE with CLOBBER_CACHE_ALWAYS
- 39b66a91bdeb 14.0 landed
-
Set PD_ALL_VISIBLE and visibility map bits in COPY FREEZE
- 7db0cd2145f2 14.0 landed
-
docs: client certificates are always sent to the server
- ff60394a8c9a 14.0 cited
-
Mark commit and abort WAL records with XLR_SPECIAL_REL_UPDATE.
- a28d731a1187 14.0 cited
-
docs: land height is "elevation", not "altitude"
- 92c12e46d5f1 13.0 cited
-
Improve the internal implementation of ereport().
- 17a28b03645e 13.0 cited