pgsql: Use correct connection for cancellation in frontend's parallel s - Mailing list pgsql-committers

From Michael Paquier
Subject pgsql: Use correct connection for cancellation in frontend's parallel s
Date
Msg-id E1oRpEG-0006EO-BC@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Use correct connection for cancellation in frontend's parallel slots

While waiting for slots to become available in wait_on_slots() in
parallel_slot.c, the cancellation always relied on the first connection
in the set to do the job.  This could cause problems when this slot's
socket is gone as PQgetCancel() would return NULL in this case.  Rather
than always using the first connection, this changes the logic to use
the first valid connection for the cancellation.

Author: Ranier Vilela
Reviewed-by: Justin Pryzby
Discussion: https://postgr.es/m/CAEudQAokk1h_pUwGXsYS4oVOuf35s1O2o3TXGHpV8=AWikvgHA@mail.gmail.com
Backpatch-through: 14

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/aeec3534ccf3fa4a207694955b4078a9a9dafc8f

Modified Files
--------------
src/fe_utils/parallel_slot.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)


pgsql-committers by date:

Previous
From: Peter Eisentraut
Date:
Subject: pgsql: Remove unneeded null pointer checks before PQfreemem()
Next
From: John Naylor
Date:
Subject: pgsql: Be more careful to avoid including system headers after perl.h