Re: Timeline switching with partial WAL records can break replica recovery

From: Artem Gavrilov <artem(dot)gavrilov(at)percona(dot)com>
To: Alena Vinter <dlaaren8(at)gmail(dot)com>
Cc: Nataliia <k(dot)natalissa(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Timeline switching with partial WAL records can break replica recovery
Date: 2026-01-12 18:04:19
Message-ID: CAFPkQKwvfW=My5ET1MxZhwH1bmdHRneBna8q7EQqSUJac1X-2w@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

>
> Could this be avoided by having the standby check the WAL archive before
> promotion?

I'm afraid we can't say anything about how archiving works for the whole
cluster. It's quite possible that archiving configured only on primary or
primary and secondary use different archive locations or maybe you have
archive_command but not restore_command configured, etc...

Maybe we can add an exception and let the new timeline start after
incomplete contrecord? Most likely it will cause problems that I'm unaware
of, but it seems we can handle such record in both timelines.

--

Artem Gavrilov

Senior Software Engineer, Percona

artem(dot)gavrilov(at)percona(dot)com

percona.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Matheus Alcantara 2026-01-12 18:07:21 Re: PL/Python initialization cleanup
Previous Message Andres Freund 2026-01-12 17:45:03 Re: Buffer locking is special (hints, checksums, AIO writes)