Re: Sync scan & regression tests
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Heikki Linnakangas <hlinnaka@iki.fi>
Cc: Andres Freund <andres@anarazel.de>,
Tomas Vondra <tomas.vondra@enterprisedb.com>,
David Rowley <dgrowleyml@gmail.com>,
Melanie Plageman <melanieplageman@gmail.com>,
Konstantin Knizhnik <knizhnik@garret.ru>,
pgsql-hackers@lists.postgresql.org,
Thomas Munro <thomas.munro@gmail.com>
Date: 2023-09-18T13:45:19Z
Lists: pgsql-hackers
Heikki Linnakangas <hlinnaka@iki.fi> writes: > On 05/09/2023 06:16, Tom Lane wrote: >> So chipmunk is getting through the core tests now, but instead it >> is failing in contrib/pg_visibility [1]: > I bisected it to this: > commit 82a4edabd272f70d044faec8cf7fd1eab92d9991 (HEAD) > Author: Andres Freund <andres@anarazel.de> > Date: Mon Aug 14 09:54:03 2023 -0700 > hio: Take number of prior relation extensions into account Yeah, I came to the same conclusion after discovering that I could reproduce it locally with small shared_buffers. > I think the behavior is fine. The reasons given in the commit message > make sense. But it would be nice to silence the test failure. Some > alternatives: > ... > c) Change the extension logic so that we don't extend so much when the > table is small. The efficiency of bulk extension doesn't matter when the > table is tiny, so arguably we should rather try to minimize the table > size. If you have millions of tiny tables, allocating one extra block on > each adds up. I think your alternative (c) is plenty attractive. IIUC, the current change has at one stroke doubled the amount of disk space eaten by a table that formerly needed two pages. I don't think we should be adding more than one page at a time until the table size reaches perhaps 10 pages. regards, tom lane
Commits
-
Avoid edge case in pg_visibility test with small shared_buffers
- 408209d6a9ae 16.3 landed
- 3a4837fc809a 17.0 landed
-
Report syncscan position at end of scan.
- d5feb6011e62 16.0 landed
- e8d74ad625f7 17.0 landed
-
hio: Take number of prior relation extensions into account
- 82a4edabd272 17.0 cited
-
Reduce code duplication between heapgettup and heapgettup_pagemode
- 7ae0ab0ad970 16.0 cited
-
Fix CLUSTER tuplesorts on abbreviated expressions.
- 8ab0ebb9a842 15.0 cited
-
Set PD_ALL_VISIBLE and visibility map bits in COPY FREEZE
- 7db0cd2145f2 14.0 cited