Re: pg_waldump: support decoding of WAL inside tarfile - Mailing list pgsql-hackers

From Amul Sul
Subject Re: pg_waldump: support decoding of WAL inside tarfile
Date
Msg-id CAAJ_b95JZ7SunSeCgxB3+pC+38B5smD9y4uubAGmZTNo0xtHog@mail.gmail.com
Whole thread
In response to Re: pg_waldump: support decoding of WAL inside tarfile  (Amul Sul <sulamul@gmail.com>)
Responses Re: pg_waldump: support decoding of WAL inside tarfile
List pgsql-hackers
On Wed, Mar 18, 2026 at 8:46 PM Amul Sul <sulamul@gmail.com> wrote:
>
> On Wed, Mar 18, 2026 at 5:15 PM Amul Sul <sulamul@gmail.com> wrote:
> >
> > On Wed, Mar 11, 2026 at 10:38 PM Andrew Dunstan <andrew@dunslane.net> wrote:
> > > [...]
> > > Looks pretty good. I have squashed them into three patches I think are committable. Also attached is a diff
showingwhat's changed - mainly this: 
> > >
> > > . --follow + tar archive rejected (pg_waldump.c) — new validation prevents a confusing pg_fatal when combining
--followwith a tar archive 
> > > . error messages split (archive_waldump.c) — the single "could not read file" error is now two distinct messages:
"WALsegment is too short" (truncated file) vs "unexpected end of archive" (archive EOF) - Fixes an issue raised in
review
> > > . hash table cleanup (archive_waldump.c) — free_archive_reader now iterates and frees all remaining hash entries
anddestroys the table 
> > >
> >
> > The final squashed version looks good to me, thank you. But, I would
> > like to propose splitting the 0001 patch into two separate commits: a
> > preparatory refactoring of the pg_waldump code and a standalone commit
> > that moves the tar archive detection and compression logic to a common
> > location, as the latter is an independent improvement to the existing
> > codebase. Additionally, since the test file refactoring was only kept
> > separate to facilitate the review and has already been reviewed, I
> > suggest merging those changes into the main feature patch i.e. 0002.
> > All other elements should remain in a single preparatory refactoring
> > patch for pg_waldump.
> >
> > Attached is the version that includes the proposed split. No
> > additional changes to 0002 and 0003 patches.
> >
>
> Added the two missing 'Reviewed-by' lines to the credit section of the
> commit message and did a minor optimization in get_archive_wal_entry.
>

Attaching an updated version. It includes some tweaks to code
comments, adds an assert inside get_archive_wal_entry(), moves the
archive_read_buf_size declaration and usage into an assert-enabled
check, and makes a minor change to precheck_tar_backup_file() to
assign out-variables only after successful validation.

Regards,
Amul

Attachment

pgsql-hackers by date:

Previous
From: Jakub Wartak
Date:
Subject: Re: pg_stat_io_histogram
Next
From: Heikki Linnakangas
Date:
Subject: Re: Better shared data structure management and resizable shared data structures