From: | Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com> |
---|---|
To: | Japin Li <japinli(at)hotmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Requested WAL segment xxx has already been removed |
Date: | 2025-07-14 11:33:36 |
Message-ID: | 620c2261-c79b-4a06-a09a-00b97e56b0fa@oss.nttdata.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2025/07/14 17:08, Japin Li wrote:
>
> Hi all,
>
> I recently hit an error with our streaming replication setup:
>
> 2025-07-14 11:52:59.361 CST,"replicator","",728458,"10.9.9.74:35724",68747f1b.b1d8a,1,"START_REPLICATION",2025-07-14 11:52:59 CST,3/0,0,ERROR,58P01,"requested WAL segment 00000001000000000000000C has already been removed",,,,,,"START_REPLICATION 0/C000000 TIMELINE 1",,,"standby","walsender",,0
>
> It appears the requested WAL segment 00000001000000000000000C had already been
> archived, and I confirmed its presence in the archive directory. However, when
> the standby tried to request this file, the primary only searched for it in
> pg_wal and didn't check the archive directory. I had to manually copy the
> segment into pg_wal to get streaming replication working again.
>
> My question is: Can we make the primary automatically search the archive if
> restore_command is set?
>
> I found that Fujii Masao also requested this feature [1], but it seems there
> wasn't a consensus.
Yeah, I still like this idea. It's useful, for example, when we want to
temporarily retain WAL files, such as during planned standby maintenance,
to avoid "requested WAL segment ... removed." error.
Using a replication slot is one way to retain WAL files in pg_wal,
but it requires the pg_wal directory to be large enough to hold all
WAL generated during that time, which isn't always practical.
Regards,
--
Fujii Masao
NTT DATA Japan Corporation
From | Date | Subject | |
---|---|---|---|
Next Message | jian he | 2025-07-14 11:39:18 | sql/json query function JsonBehavior default expression's collation may differ from returning type's collation |
Previous Message | Fujii Masao | 2025-07-14 11:10:40 | Re: Assertion failure in smgr.c when using pg_prewarm with partitioned tables |