Skip to content

pg_probackup не накатывает wal до конца #679

Description

@stevemayster

Добрый день.
Пытаемся понять причину такого поведения:
База восстанавливается нормально но wal до конца не докатывает, останавливается и чего-то ждет:

В логах БД

2026-07-07 10:46:07 MSK [35489]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D0000009C, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:07 MSK [35489]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 420ms
2026-07-07 10:46:07.627 MSK [35246] LOG:  restored log file "0000000500000B4D0000009C" from archive
2026-07-07 10:46:07.634 MSK [35246] LOG:  redo in progress, elapsed time: 20.26 s, current LSN: B4D/9BFE4750
2026-07-07 10:46:07 MSK [35497]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D0000009D, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:08 MSK [35497]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 387ms
2026-07-07 10:46:08.042 MSK [35246] LOG:  restored log file "0000000500000B4D0000009D" from archive
2026-07-07 10:46:08 MSK [35499]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D0000009E, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:08 MSK [35499]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 390ms
2026-07-07 10:46:08.463 MSK [35246] LOG:  restored log file "0000000500000B4D0000009E" from archive
2026-07-07 10:46:08 MSK [35501]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D0000009F, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:08 MSK [35501]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 433ms
2026-07-07 10:46:08.926 MSK [35246] LOG:  restored log file "0000000500000B4D0000009F" from archive
2026-07-07 10:46:08 MSK [35509]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D000000A0, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:09 MSK [35509]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 392ms
2026-07-07 10:46:09.347 MSK [35246] LOG:  restored log file "0000000500000B4D000000A0" from archive
2026-07-07 10:46:09 MSK [35511]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D000000A1, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:09 MSK [35511]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 407ms
2026-07-07 10:46:09.785 MSK [35246] LOG:  restored log file "0000000500000B4D000000A1" from archive
2026-07-07 10:46:09 MSK [35519]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D000000A2, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:10 MSK [35519]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 431ms
2026-07-07 10:46:10.246 MSK [35246] LOG:  restored log file "0000000500000B4D000000A2" from archive
2026-07-07 10:46:10 MSK [35521]: [1-1]: INFO: pg_probackup archive-get WAL file: 0000000500000B4D000000A3, remote: ssh, threads: 1/1, batch: 1
2026-07-07 10:46:10 MSK [35521]: [1-1]: INFO: pg_probackup archive-get completed successfully, fetched: 1/1, time elapsed: 395ms
2026-07-07 10:46:10.672 MSK [35246] LOG:  restored log file "0000000500000B4D000000A3" from archive```

Что попробовали на данный момент:
1)  Стянули вол руками в папку и перезапустили базу pkill, накат остановился на том-же wal и дальше не идет
2) Проверить следующий wal pg_waldump - он валиден
3) Стянуть  файлик через pg_probackup archive-fetch ( все в порядке)

В настройках postgresql.auto.conf  стоит следующее и для всех остальных баз кроме этой работает

# recovery settings added by pg_probackup restore of backup THRP8P at '2026-07-07 10:21:15+03'
## recovery settings
recovery_target_timeline = 'current'
recovery_target_action = 'pause'
restore_command = '"/usr/bin/pg_probackup-16" archive-get -B "/backups" --instance "db" --wal-file-path=%p --wal-file-name=%f --remote-host=srv-bkp-2 --remote-user=rman'

И на всех БД кроме этой работает

Нашли workaround пока такой:

Запустить с recovery-target = immediate

База запускается в RO и просит выполнить pg_wal_replay_resume() 
Затем фетчит один wal и запускается в RW


Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions