barman
barman copied to clipboard
Missing wal files in passive backups
Hi all,
i'm running barman 3.3 in main site and barman 3.5 into relay site. In relay site I've a lower retention with only last two backup.
After some infrastructure issue in relay site I need to retrieve older backup from main site.
I've increase retention_policy from REDUNDANCY 2 to 4 and run barman sync-backup
Thanks
Hi @msartor92 - when Barman is running as a passive server it uses a file named sync-wals.info
in the wals_directory
for that server to track the most recently copied WAL segment. It should be possible to force Barman to sync older WALs by deleting that file (or moving it to a safe location) and re-running barman sync-wals
.
For example, with a passive Barman server named main
I have an empty directory for an older WAL prefix:
barman@passive:~$ ls -l main/wals/0000000100000001/
total 0
The sync-wals.info
file indicates a more recent WAL segment, so barman does not sync these older WALs:
barman@passive:~$ cat main/wals/sync-wals.info
000000010000001000000017.00000028.backup 8103
barman@passive:~$ barman sync-wals main
barman@passive:~$ ls -l main/wals/0000000100000001/
total 0
If the sync-wals.info
file is unavailable, Barman will sync all the WALs it knows about, so the older WAL segments are copied across:
barman@passive:~$ mv main/wals/sync-wals.info ~/
barman@passive:~$ barman sync-wals main
barman@passive:~$ ls -l main/wals/0000000100000001/
total 16388
-rw------- 1 barman barman 16777216 Jul 6 15:34 000000010000000100000096
-rw------- 1 barman barman 343 Jul 6 15:34 000000010000000100000096.00000028.backup
Hi, that's pretty usefull, i thought that it would be possibile via cli, for example to force wal sync from a spcecific backup
I agree - a cli option to force a complete resync would be useful here.