Re: pg_waldump: support decoding of WAL inside tarfile

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Tomas Vondra <tomas(at)vondra(dot)me>
Cc: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, Michael Paquier <michael(at)paquier(dot)xyz>, Andrew Dunstan <andrew(at)dunslane(dot)net>, Amul Sul <sulamul(at)gmail(dot)com>, Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com>, Anthonin Bonnefoy <anthonin(dot)bonnefoy(at)datadoghq(dot)com>, Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, Jakub Wartak <jakub(dot)wartak(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: pg_waldump: support decoding of WAL inside tarfile
Date: 2026-03-28 23:12:11
Message-ID: 1630755.1774739531@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tomas Vondra <tomas(at)vondra(dot)me> writes:
> On 3/28/26 23:36, Tom Lane wrote:
>> It's apparently been there and been default since FreeBSD 13.1.
>> This leads one to wonder how come BF member dikkop is managing
>> to run this test successfully. I speculate that it's using a
>> filesystem type that doesn't do sparse files (cc'ing Vondra
>> for confirmation on that).

> It's running on ufs. But I think the explanation is very simple. We had
> a short power outage on Thursday, and the FreeBSD machine failed to boot
> properly after the power was restored. IIUC this test is new, right?

Not that new, it dates to b15c15139, about a week ago.

I've reproduced Thomas' failure on a local FreeBSD 15.0 image
using zfs, and confirmed that this cowboy hack fixes it:

diff --git a/src/bin/pg_waldump/t/001_basic.pl b/src/bin/pg_waldump/t/001_basic.pl
index 8bb8fa225f6..2904f4ef118 100644
--- a/src/bin/pg_waldump/t/001_basic.pl
+++ b/src/bin/pg_waldump/t/001_basic.pl
@@ -346,7 +346,7 @@ sub generate_archive
# move into the WAL directory before archiving files
my $cwd = getcwd;
chdir($directory) || die "chdir: $!";
- command_ok([$tar, $compression_flags, $archive, @files]);
+ command_ok([$tar, $compression_flags, $archive, '--no-read-sparse', @files]);
chdir($cwd) || die "chdir: $!";
}

Of course we can't commit that, but maybe somebody wants to
product-ize it. (Not me, at least not today.)

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Daniel Gustafsson 2026-03-28 23:14:53 Re: Changing the state of data checksums in a running cluster
Previous Message Tomas Vondra 2026-03-28 22:57:37 Re: pg_waldump: support decoding of WAL inside tarfile