Re: heap_inplace_lock vs. autovacuum w/ LOCKTAG_TUPLE
Alexander Law <exclusion@gmail.com>
From: Alexander Lakhin <exclusion@gmail.com>
To: Noah Misch <noah@leadboat.com>, pgsql-hackers@postgresql.org
Date: 2024-10-27T05:00:00Z
Lists: pgsql-hackers
Hello Noah, 27.10.2024 07:09, Noah Misch wrote: > On Sat, Oct 26, 2024 at 11:49:36AM -0700, Noah Misch wrote: >> intra-grant-inplace-db.spec got a novel failure today: >> https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=sarus&dt=2024-10-26%2014%3A08%3A58 >> >> The isolationtester_waiting query is supposed to detect that step vac2 is >> blocked. vac2 didn't finish within the timeout, but isolationtester_waiting >> never considered it blocked. >> ... work on reproducing this. FWIW, there was a similar failure in August: [1], and I also could not reproduce that locally, yet wrote a preliminary analysis at [2] in the Unsorted section, in the hope to see it again and continue investigation. [1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=iguana&dt=2024-08-29%2013%3A57%3A57 [2] https://wiki.postgresql.org/wiki/Known_Buildfarm_Test_Failures Best regards, Alexander
Commits
-
Unpin buffer before inplace update waits for an XID to end.
- c2139db11b16 12.21 landed
- 2a912bc1abdb 13.17 landed
- 11e3f288f3db 14.14 landed
- 0fe002d0c9a5 15.9 landed
- 9aef6f19ac27 17.1 landed
- 370bc7740286 16.5 landed
- 30d47ec8c6c7 18.0 landed
-
For inplace update durability, make heap_update() callers wait.
- aac2c9b4fde8 18.0 cited