Re: pg_waldump: support decoding of WAL inside tarfile
amul sul <sulamul@gmail.com>
From: Amul Sul <sulamul@gmail.com>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-08-26T11:52:20Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Move tar detection and compression logic to common.
- c8a350a43982 19 (unreleased) landed
-
pg_verifybackup: Enable WAL parsing for tar-format backups
- b3cf461b3cf9 19 (unreleased) landed
-
pg_waldump: Add support for reading WAL from tar archives
- b15c1513984e 19 (unreleased) landed
-
pg_waldump: Preparatory refactoring for tar archive WAL decoding.
- f8a0cd267170 19 (unreleased) landed
-
pg_verifybackup: Verify tar-format backups.
- 8dfd31290279 18.0 cited
Attachments
- v3-0001-Refactor-pg_waldump-Move-some-declarations-to-new.patch (application/x-patch) patch v3-0001
- v3-0002-Refactor-pg_waldump-Separate-logic-used-to-calcul.patch (application/x-patch) patch v3-0002
- v3-0003-Refactor-pg_waldump-Restructure-TAP-tests.patch (application/x-patch) patch v3-0003
- v3-0004-pg_waldump-Add-support-for-archived-WAL-decoding.patch (application/x-patch) patch v3-0004
- v3-0005-pg_waldump-Remove-the-restriction-on-the-order-of.patch (application/x-patch) patch v3-0005
- v3-0006-pg_verifybackup-Delay-default-WAL-directory-prepa.patch (application/x-patch) patch v3-0006
- v3-0007-pg_verifybackup-Rename-the-wal-directory-switch-t.patch (application/x-patch) patch v3-0007
- v3-0008-pg_verifybackup-enabled-WAL-parsing-for-tar-forma.patch (application/x-patch) patch v3-0008
On Mon, Aug 25, 2025 at 5:58 PM Amul Sul <sulamul@gmail.com> wrote: > > On Thu, Aug 7, 2025 at 7:47 PM Amul Sul <sulamul@gmail.com> wrote: > > [....] > > ----------------------------------- > > Known Issues & Status: > > ----------------------------------- > > - Timeline Switching: The current implementation in patch 006 does not > > correctly handle timeline switching. This is a known issue, especially > > when a timeline change occurs on a WAL file that has been written to a > > temporary location. > > > > This is still pending and will be addressed in the next version. > Therefore, patch 0006 remains marked as WIP. > After testing pg_waldump, I have realised that my previous understanding of its timeline handling was incorrect. I had mistakenly assumed by reading xlogreader code that it would use the same timeline-switching logic found in xlogreader, without first verifying this behavior. In testing, I found that pg_waldump does not follow timeline switches. Instead, it expects all WAL files to be from a single timeline, which is either specified by the user or determined from the starting segment or default 1. This is a positive finding, as it means we don't need to make significant changes to align pg_waldump's current behavior. The attached patches are now complete and no longer works in progress -- read for review. Additionally, I've dropped patch v2-0004 because it is no longer necessary. The primary patches that implement the proposed feature are now 0004 and 0005 in the attached set. Regards, Amul