Re: BackgroundPsql swallowing errors on windows
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Andrew Dunstan <andrew@dunslane.net>
Cc: pgsql-hackers@postgresql.org, Noah Misch <noah@leadboat.com>
Date: 2025-02-14T16:54: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 →
-
tests: BackgroundPsql: Fix potential for lost errors on windows
- bb2bf22761e1 13.21 landed
- c21ebcca7965 14.18 landed
- 70b650d18553 15.13 landed
- 4c9397c374d9 16.9 landed
- f61769adaa62 17.5 landed
- 8b886a4e3488 18.0 landed
-
Improve handling of empty query results in BackgroundPsql::query()
- 70291a3c66ec 18.0 cited
-
Extend Cluster.pm's background_psql() to be able to start asynchronously
- ba08edb06545 18.0 cited
Hi, On 2025-02-14 08:14:45 -0500, Andrew Dunstan wrote: > It's been discussed before, but I'd really really like to get rid of > BackgroundPsql. It's ugly, non-intuitive and fragile. I agree, unfortunately we're stuck with this until we have a better alternative in tree :( > Last year I did some work on this. I was going to present it at Athens but > illness prevented me, and then other life events managed to get in my way. > But the basic work is around. See <https://github.com/adunstan/test-pq/commit/98518e4929e80fb96f210bbc5aab9fdcea058512> > This introduces a libpq session object (PostgreSQL::Test::Session) which can > be backed either by FFI or a small XS wrapper - the commit has recipes for > both. Missing is a meson.build file for the XS wrapper. There are > significant performance gains to be had too (poll_query_until is much nicer, > for example, as are most uses of safe_psql). If there is interest I will > bring the work up to date, and maybe we can introduce this early in the v19 > cycle. It would significantly reduce our dependency on IPC::Run, especially > the pump() stuff. I definitely am interested. Greetings, Andres Freund