Re: WIP: WAL prefetch (another approach)
Tom Lane <tgl@sss.pgh.pa.us>
Thomas Munro <thomas.munro@gmail.com> writes: > On Sat, Nov 27, 2021 at 12:34 PM Tomas Vondra > <tomas.vondra@enterprisedb.com> wrote: >> One thing that's not clear to me is what happened to the reasons why >> this feature was reverted in the PG14 cycle? > 3. A wild goose chase for bugs on Tom Lane's antique 32 bit PPC > machine. Tom eventually reproduced it with the patches reverted, > which seemed to exonerate them but didn't leave a good feeling: what > was happening, and why did the patches hugely increase the likelihood > of the failure mode? I have no new information on that, but I know > that several people spent a huge amount of time and effort trying to > reproduce it on various types of systems, as did I, so despite not > reaching a conclusion of a bug, this certainly contributed to a > feeling that the patch had run out of steam for the 14 cycle. Yeah ... on the one hand, that machine has shown signs of hard-to-reproduce flakiness, so it's easy to write off the failures I saw as hardware issues. On the other hand, the flakiness I've seen has otherwise manifested as kernel crashes, which is nothing like the consistent test failures I was seeing with the patch. Andres speculated that maybe we were seeing a kernel bug that affects consistency of concurrent reads and writes. That could be an explanation; but it's just evidence-free speculation so far, so I don't feel real convinced by that idea either. Anyway, I hope to find time to see if the issue still reproduces with Thomas' new patch set. regards, tom lane
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix recovery_prefetch docs.
- dafae9707ab7 15.0 landed
-
Prefetch data referenced by the WAL, take II.
- 5dc0418fab28 15.0 landed
-
Add circular WAL decoding buffer, take II.
- 3f1ce973467a 15.0 landed
-
Fix generation of ./INSTALL for the distribution tarball
- 45aa88fe1d40 14.0 cited
-
Revert recovery prefetching feature.
- c2dc19342e05 14.0 landed
-
Sync guc.c and postgresql.conf.sample with the SGML docs.
- a55a98477b69 14.0 cited
-
Add information of total data processed to replication slot stats.
- f5fc2f5b23d1 14.0 cited
-
Doc: Review for "Optionally prefetch referenced data in recovery."
- dc88460c24ed 14.0 landed
-
Add circular WAL decoding buffer.
- f003d9f8721b 14.0 landed
-
Optionally prefetch referenced data in recovery.
- 1d257577e08d 14.0 landed
-
Remove read_page callback from XLogReader.
- 323cbe7c7ddc 14.0 cited
-
Provide ReadRecentBuffer() to re-pin buffers by ID.
- 2f27f8c51149 14.0 landed
-
Provide recovery_init_sync_method=syncfs.
- 61752afb2640 14.0 cited
-
Mark factorial operator, and postfix operators in general, as deprecated.
- 6ca547cf75ef 14.0 cited
-
Rationalize GetWalRcv{Write,Flush}RecPtr().
- d140f2f3e225 13.0 landed
-
Support PrefetchBuffer() in recovery.
- 3985b600f57d 13.0 landed
-
Prevent hard failures of standbys caused by recycled WAL segments
- 70b4f82a4b5c 11.0 cited