| From: | Heikki Linnakangas <hlinnaka(at)iki(dot)fi> | 
|---|---|
| To: | Melanie Plageman <melanieplageman(at)gmail(dot)com>, vignesh C <vignesh21(at)gmail(dot)com> | 
| Cc: | Andres Freund <andres(at)anarazel(dot)de>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com> | 
| Subject: | Re: Confine vacuum skip logic to lazy_scan_skip | 
| Date: | 2024-03-06 19:55:21 | 
| Message-ID: | 1eeccf12-d5d1-4b7e-b88b-7342410129d7@iki.fi | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
On 27/02/2024 21:47, Melanie Plageman wrote:
> The attached v5 has some simplifications when compared to v4 but takes
> largely the same approach.
> 
> 0001-0004 are refactoring
I'm looking at just these 0001-0004 patches for now. I like those 
changes a lot for the sake of readablity even without any of the later 
patches.
I made some further changes. I kept them as separate commits for easier 
review, see the commit messages for details. Any thoughts on those changes?
I feel heap_vac_scan_get_next_block() function could use some love. 
Maybe just some rewording of the comments, or maybe some other 
refactoring; not sure. But I'm pretty happy with the function signature 
and how it's called.
BTW, do we have tests that would fail if we botched up 
heap_vac_scan_get_next_block() so that it would skip pages incorrectly, 
for example? Not asking you to write them for this patch, but I'm just 
wondering.
-- 
Heikki Linnakangas
Neon (https://neon.tech)
| Attachment | Content-Type | Size | 
|---|---|---|
| v6-0001-lazy_scan_skip-remove-unneeded-local-var-nskippab.patch | text/x-patch | 1.7 KB | 
| v6-0002-Add-lazy_scan_skip-unskippable-state-to-LVRelStat.patch | text/x-patch | 15.8 KB | 
| v6-0003-Confine-vacuum-skip-logic-to-lazy_scan_skip.patch | text/x-patch | 14.0 KB | 
| v6-0004-Remove-unneeded-vacuum_delay_point-from-heap_vac_.patch | text/x-patch | 1.0 KB | 
| v6-0005-Remove-unused-skipping_current_range-field.patch | text/x-patch | 812 bytes | 
| v6-0006-Move-vmbuffer-back-to-a-local-varible-in-lazy_sca.patch | text/x-patch | 10.4 KB | 
| v6-0007-Rename-skip_state.patch | text/x-patch | 5.0 KB | 
| v6-0008-Track-current_block-in-the-skip-state.patch | text/x-patch | 4.2 KB | 
| v6-0009-Comment-whitespace-cleanup.patch | text/x-patch | 4.3 KB | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Alexander Korotkov | 2024-03-06 19:55:46 | Re: Transaction timeout | 
| Previous Message | Stephen Frost | 2024-03-06 19:28:44 | Re: Provide a pg_truncate_freespacemap function |