Re: IPC::Run::time[r|out] vs our TAP tests
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Daniel Gustafsson <daniel@yesql.se>
Cc: Andrew Dunstan <andrew@dunslane.net>,
Heikki Linnakangas <hlinnaka@iki.fi>,
PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-02-11T20:19:00Z
Lists: pgsql-hackers
Attachments
- v5-0001-Restart-BackgroundPsql-s-timer-more-nicely.patch (text/x-diff) patch v5-0001
Daniel Gustafsson <daniel@yesql.se> writes:
> [ v4 patches for better timeout handling ]
I got around to reviewing these finally. v4-0001 looks good, except
that there is now another copy of the same logic in 030_pager.pl
which should be fixed in the same way. Proposed revision to do that
attached.
I'm not very comfortable with v4-0002, specifically the decision
that sub query and sub query_until should now return undef instead
of dying. I think that next to no call sites will handle that well.
Also, as this stands both subs will fail to reset $self->{stdout},
pretty much guaranteeing that the next query will fail too.
(Although if psql is stuck, do we have any chance at all of
subsequent tests succeeding? Dying might be superior to spewing
a bunch of content-free follow-on failures.)
a1d7ae2b2 already made what I think is the critical debuggability
improvement in sub query, namely to not die until after reporting
whatever we got from the query. I'm inclined to suggest that
sub query_until should be made to print a similar report, but
still die on timeout.
regards, tom lane
Commits
-
Restart BackgroundPsql's timer more nicely.
- 53c6bd0aa3de 19 (unreleased) landed
-
Implement pg_wal_replay_wait() stored procedure
- 3c5db1d6b016 18.0 cited
-
psql: fix variable existence tab completion
- 927332b95e77 17.0 cited