Switch psql's TAP test for query cancellation to use IPC::Run::signal()

Michael Paquier <michael@paquier.xyz>

Commit: 522a31ac873d7c6b02677f6d119c089a7dd09dd1
Author: Michael Paquier <michael@paquier.xyz>
Date: 2023-09-13T01:10:04Z
Releases: 17.0
Switch psql's TAP test for query cancellation to use IPC::Run::signal()

Previously, the test relied on a trick with a shell to retrieve the PID
of the psql session to be stopped with SIGINT, that was skipped on
Windows.  This commit changes the test to use IPC::Run::signal()
instead, which still does not work on Windows, but for a different
reason: SIGINT would stop the test before finishing.

This should allow the test to run on non-Windows platforms where PPID is
not supported (like NetBSD), spreading it a bit more across the
buildfarm.  And the logic of the test is simpler.

It is the first time in the tree that IPC::Run::signal() is used, so, as
a matter of safety (or just call that as me having cold feet), no
backpatch is done, at least for now.

Author: Yugo NAGATA
Reviewed-by: Fabien Coelho
Discussion: https://postgr.es/m/20230810125935.22c2922ea5250ba79358965b@sraoss.co.jp

Files

PathChange+/−
src/bin/psql/t/020_cancel.pl modified +2 −36

Discussion