]> granicus.if.org Git - postgresql/commit
In Windows pg_dump, ensure idle workers will shut down during error exit.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 26 May 2016 14:50:30 +0000 (10:50 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 26 May 2016 14:50:38 +0000 (10:50 -0400)
commit6479df1378607e5edbe19cc28a3b52c62f11d8fa
tree74978322ed2fdd039b85f023ba8b30b1f3208312
parentb2355a29c69c90b9987cc3a8884b8ed3396842e9
In Windows pg_dump, ensure idle workers will shut down during error exit.

The Windows coding of ShutdownWorkersHard() thought that setting termEvent
was sufficient to make workers exit after an error.  But that only helps
if a worker is busy and passes through checkAborting().  An idle worker
will just sit, resulting in pg_dump failing to exit until the user gives up
and hits control-C.  We should close the write end of the command pipe
so that idle workers will see socket EOF and exit, as the Unix coding was
already doing.

Back-patch to 9.3 where parallel pg_dump was introduced.

Kyotaro Horiguchi
src/bin/pg_dump/parallel.c