Re: could not link file in wal restore lines

From: David Steele <david(at)pgmasters(dot)net>
To: Zsolt Ero <zsolt(dot)ero(at)gmail(dot)com>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org, Michael Paquier <michael(at)paquier(dot)xyz>
Subject: Re: could not link file in wal restore lines
Date: 2022-07-25 12:40:12
Message-ID: 4b392ab1-d4a5-5557-adf0-ae319e723da5@pgmasters.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 7/23/22 12:53, Zsolt Ero wrote:
> On 23. Jul 2022 at 18:43:57, David Steele <david(at)pgmasters(dot)net
> <mailto:david(at)pgmasters(dot)net>> wrote:
>> On 7/23/22 12:39, Zsolt Ero wrote:
>>> > On 23. Jul 2022 at 15:20:32, David Steele <david(at)pgmasters(dot)net
>>> <mailto:david(at)pgmasters(dot)net>
>>> > <mailto:david(at)pgmasters(dot)net <mailto:david(at)pgmasters(dot)net>>> wrote:
>>> > Zsolt, can you add --log-level-console=info to your archive_command so
>>> > we can see what parameters are being passed to pgbackrest?
>>>
>>> archive_command = 'pgbackrest --stanza=app --log-level-console=info
>>> archive-push %p'
>>>
>>> on the destination server (where the restore happens). There are no
>>> changes in the log, only 3 lines appear once everything is done. I've
>>> attached the log. Do I need to change this command on the source server?
>>
>> Oops, sorry, I meant the restore_command on the server where you do the
>> restore.
>>
>> You'll need to edit this in postgresql.auto.conf after the pgbackrest
>> restore but before starting PostgreSQL.
>
> I did that, attached the new log.

From this log it looks like pgBackRest is writing to RECOVERYXLOG as I
expected.

The error happens relatively rarely (18) compared to the number of WAL
segments fetched (1029). pgBackRest does not write the files in
question, e.g.

LOG: could not link file "pg_wal/000000010000015B0000002C" to
"pg_wal/000000010000015B000000F4": File exists

And the pg_wal directory started empty.

I ran one our standard stress tests on 12.11 (recovering 1592 WAL
segments) and I did not see the "could not link file" message.

Your system seems to be doing recovery pretty quickly. I wonder if there
is a race condition in WAL recycling?

One thing you could try is to set wal_recycle = false.

Regards,
-David

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Alex Malek 2022-07-25 13:31:45 Re: BUG #17556: ts_headline does not correctly find matches when separated by 4,999 words
Previous Message Ajin Cherian 2022-07-25 11:43:13 Re: Excessive number of replication slots for 12->14 logical replication