pgsql: shm_mq: Fix failure to notice a dead counterparty when nowait is - Mailing list pgsql-committers

From Robert Haas
Subject pgsql: shm_mq: Fix failure to notice a dead counterparty when nowait is
Date
Msg-id E1ZpMjq-00036q-Kv@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
shm_mq: Fix failure to notice a dead counterparty when nowait is used.

The shm_mq mechanism was intended to optionally notice when the process
on the other end of the queue fails to attach to the queue.  It does
this by allowing the user to pass a BackgroundWorkerHandle; if the
background worker in question is launched and dies without attaching
to the queue, then we know it never will.  This logic works OK in
blocking mode, but when called with nowait = true we fail to notice
that this has happened due to an asymmetry in the logic.  Repair.

Reported off-list by Rushabh Lathia.  Patch by me.

Branch
------
REL9_5_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/ac9a01615c5d45eb08e5b78c3d0155214e0ab498

Modified Files
--------------
src/backend/storage/ipc/shm_mq.c |   48 ++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)


pgsql-committers by date:

Previous
From: Robert Haas
Date:
Subject: pgsql: Fix typos in comments.
Next
From: Robert Haas
Date:
Subject: pgsql: shm_mq: Fix failure to notice a dead counterparty when nowait is