Re: meson: Make test output much more useful on failure (both in CI and locally)
Jelte Fennema <postgres@jeltef.nl>
From: "Jelte Fennema-Nio" <postgres@jeltef.nl>
To: "Nazir Bilal Yavuz" <byavuz81@gmail.com>
Cc: "Andres Freund" <andres@anarazel.de>, "PostgreSQL Hackers"
<pgsql-hackers@lists.postgresql.org>
Date: 2026-02-06T08:44:12Z
Lists: pgsql-hackers
Attachments
- v3-0001-pg_regress-Include-diffs-in-output.patch (text/x-patch) patch v3-0001
- v3-0002-perl-tap-Show-failed-command-output.patch (text/x-patch) patch v3-0002
- v3-0003-perl-tap-Show-die-reason-in-TAP-output.patch (text/x-patch) patch v3-0003
- v3-0004-perl-tap-Use-croak-instead-of-die-in-our-perl-hel.patch (text/x-patch) patch v3-0004
On Tue, 3 Feb 2026 at 11:20, Nazir Bilal Yavuz <byavuz81@gmail.com> wrote: > v2-0001: > > This doesn't really read the first 80 lines of the combined diff. > Lines with more than 1023 characters will be counted and printed as > multiple lines. I don't think this is a problem but clearing this > would be helpful. Other than that, it looks good to me. I was annoyed by this, so I actually fixed it (manually tested by changing the buffer to 10 bytes). This meant I needed to introduce DIAG_DETAIL and DIAG_END, like we already had NOTE_DETAIL and NOTE_END. > v2-0002: > > I am just curious if test failure can cause file descriptors not being > properly closed and then the IPC::Run:run() call will hang > indefinitely like the pg_ctl case. Other than that, it looks good to > me. No, this issue only happens because for the 'pg_ctl restart' process, its the child postmaster process outlives the pg_ctl process, WHILE still having the stdout/stderr file descriptor open. As long as all the subprocesses exit, the file descriptor will be closed by the OS automatically. So, this problem really only occurs in these daemon spawning situations. Which for us in practice is only for pg_ctl start/restart.
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Use command_ok for pg_regress calls in 002_pg_upgrade and 027_stream_regress
- bb6ae9707c17 19 (unreleased) landed
-
perl tap: Show die reason in TAP output
- 76540fdedf40 19 (unreleased) landed
-
perl tap: Show failed command output
- 1402b8d2fc70 19 (unreleased) landed
-
perl tap: Use croak instead of die in our helper modules
- b8da9869b850 19 (unreleased) landed
-
pg_regress: Include diffs in TAP output
- 5720ae014364 19 (unreleased) landed