Re: 17.8 standby crashes during WAL replay from 17.5 primary: "could not access status of transaction" - Mailing list pgsql-bugs

From Andrey Borodin
Subject Re: 17.8 standby crashes during WAL replay from 17.5 primary: "could not access status of transaction"
Date
Msg-id 029A0108-DB58-4A62-A8DF-A8E6FBF9E4B2@yandex-team.ru
Whole thread Raw
In response to Re: 17.8 standby crashes during WAL replay from 17.5 primary: "could not access status of transaction"  (Andrey Borodin <x4mmm@yandex-team.ru>)
List pgsql-bugs

> On 14 Feb 2026, at 22:41, Andrey Borodin <x4mmm@yandex-team.ru> wrote:
>
> Wiping write by XLOG_MULTIXACT_TRUNCATE_ID seems correct to me everywhere 14-18.

FWIW I've tried to create a TAP-reproducer, but it's tricky in controlled environment.
But I've created a TAP that triggers near-wraparound truncation:

2026-02-15 23:05:57.716 +05 [73950] DEBUG: replaying multixact truncation: offsets [1, 2147483648), offsets segments
[0,8000), members [1, 3), members segments [0, 0) 
2026-02-15 23:05:57.716 +05 [73950] CONTEXT: WAL redo at 0/309CD70 for MultiXact/TRUNCATE_ID: offsets [1, 2147483648),
members[1, 3) 
2026-02-15 23:05:57.716 +05 [73950] DEBUG: MultiXactId wrap limit is 4294967295, limited by database with OID 1
2026-02-15 23:05:57.716 +05 [73950] CONTEXT: WAL redo at 0/309CD70 for MultiXact/TRUNCATE_ID: offsets [1, 2147483648),
members[1, 3) 
2026-02-15 23:05:57.716 +05 [73950] LOG: file "pg_multixact/offsets/8000" doesn't exist, reading as zeroes


And I observe no problems with applied "0001-Don-t-reset-latest_page_number-when-replaying-multix.patch"


Best regards, Andrey Borodin.




Attachment

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #19410: Cannot ser client_encoding
Next
From: Kirill Reshke
Date:
Subject: Re: 17.8 standby crashes during WAL replay from 17.5 primary: "could not access status of transaction"