Re: Fix 035_standby_logical_decoding.pl race conditions
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>
Cc: 'Amit Kapila' <amit.kapila16@gmail.com>, Bertrand Drouvot <bertranddrouvot.pg@gmail.com>, "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2025-04-08T05:13:20Z
Lists: pgsql-hackers
On Tue, Apr 08, 2025 at 02:00:35AM +0000, Hayato Kuroda (Fujitsu) wrote:
> Your patch looks good to me and it could pass on my env. PSA patches for PG16.
> Patch for PG17 is not changed, just renamed.
@@ -1287,6 +1288,17 @@ LogStandbySnapshot(void)
Assert(XLogStandbyInfoActive());
+#ifdef USE_INJECTION_POINTS
+ if (IS_INJECTION_POINT_ATTACHED("skip-log-running-xacts"))
+ {
+ /*
+ * This record could move slot's xmin forward during decoding, leading
+ * to unpredictable results, so skip it when requested by the test.
+ */
+ return GetInsertRecPtr();
+ }
+#endif
I have unfortunately not been able to pay much attention to this
thread, but using an injection point as a trick to disable the
generation of these random standby snapshot records is an interesting
approach to stabilize the test, and it should make it faster as well.
Nice.
--
Michael
Commits
-
Stabilize 035_standby_logical_decoding.pl.
- 105b2cb33617 18.0 landed
- 17a165d60f73 17.5 landed
- 86392e8827d8 16.9 landed