Fix intermittent BF failures in 035_conflicts. This commit addresses two sources of instability in the 035_conflicts test:
Unstable VACUUM usage: The test previously relied on VACUUM to remove a deleted column, which can be unreliable due to concurrent background writer or checkpoint activity that may lock the page containing the deleted tuple. Since the test already verifies that replication_slot.xmin has advanced sufficiently to confirm the feature's correctness, so, the VACUUM step is removed to improve test stability. Timing-sensitive retention resumption check: The test includes a check to confirm that retention of conflict-relevant information resumes after setting max_retention_duration to 0. However, in some cases, the apply worker resumes retention immediately after the inactive slot is removed from synchronized_standby_slots, even before max_retention_duration is updated. This can happen if remote changes are applied in under 1ms, causing the test to timeout while waiting for a later log position. To ensure consistent behavior, this commit delays the removal of synchronized_standby_slots until after max_retention_duration is set to 0. Author: Zhijie Hou <[email protected]> Reviewed-by: shveta malik <[email protected]> Reviewed-by: Amit Kapila <[email protected]> Discussion: https://postgr.es/m/ty4pr01mb16907805de4816e53c547081594...@ty4pr01mb16907.jpnprd01.prod.outlook.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/0f42206531b3646f5bcda2bd35bb53fb0488eb00 Modified Files -------------- src/test/subscription/t/035_conflicts.pl | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-)
