Hello, I am following up on my report with a patch, which did not receive any responses. I suspect the issue only manifests under specific conditions, so I am sending additional details along with a reliable reproducer. For context: Incremental backups cannot be restored when a relation larger than 1 GB (multiple segments) is vacuum-truncated between the base backup and the incremental backup (pg_basebackup itself completes successfully, but the resulting incremental backup is not restorable) For segmented relations, the WAL summarizer records limit_block in the WAL summary. During incremental backup, the truncation length is computed incorrectly because a relation-wide limit is compared against a segment-local size. ReproducerI am attaching a bash script that reliably reproduces the issue on my system. The script:
The script is fully automated and intended to be run as-is. A patch itself in the previous message.I would appreciate feedback on the approach and am happy to revise it if needed.Best regards, Oleg Tkachenko |
<<attachment: reproducer.zip>>
|
