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_b95Oj6Kb6YGsV42Gqy=N7GuOX+FMmEtUbS7NC6BvARN2mQ@mail.gmail.com
Whole thread
In response to Re: pg_waldump: support decoding of WAL inside tarfile  (Zsolt Parragi <zsolt.parragi@percona.com>)
Responses Re: pg_waldump: support decoding of WAL inside tarfile
List pgsql-hackers
On Fri, Mar 20, 2026 at 2:18 AM Zsolt Parragi <zsolt.parragi@percona.com> wrote:
>
> Hello!
>
> Path is ignored with a positional argument, I think this is a bug?
>
> This fails:
>
> pg_waldump --path /wal/dir 000000010000000000000001
>
> And this works:
>
> pg_waldump --path /wal/dir --start 0/01000028 --end 0/010020F8
>

Good catch! I've fixed this in the attached version and updated a test
case to cover this scenario.

> +{
> + int fname_len = strlen(fname);
> +
>
> Shouldn't this use size_t?
>

Okay, that can be used. I’ve done the same in the attached version.

> + /*
> + * Setup temporary directory to store WAL segments and set up an exit
> + * callback to remove it upon completion.
> + */
> + setup_tmpwal_dir(waldir);
>
> Maybe this could be deferred to be created only on first use? If I
> understand correctly, in a typical scenario waldump won't use this
> temporary directory, yet it always creates it.

Yeah, that optimization can be done, but passing the waldir  -- which
is only used once -- to the point where the first temp file is created
would require quite a bit of code refactoring that doesn't seem to
offer much gain, IMO.

Regards,
Amul

Attachment

pgsql-hackers by date:

Previous
From: Dilip Kumar
Date:
Subject: Re: synchronized_standby_slots behavior inconsistent with quorum-based synchronous replication
Next
From: Kuroda, Hayato/黒田 隼人
Date:
Subject: RE: [Proposal] Adding Log File Capability to pg_createsubscriber