I noticed pg_dump does not exit gracefully when killed.
start pg_dump
kill pg_dump by ctrl-c
ps x
27246 ? Ds 96:02 postgres: t-ishii dbt3 [local] COPY
29920 ? S 0:00 sshd: ishii@pts/5
29921 pts/5 Ss 0:00 -bash
30172 ? Ss 0:00 postgres: t-ishii dbt3 [local] LOCK TABLE waiting
As you can see, after killing pg_dump, a backend process is (LOCK
TABLE waiting) left behind. I think this could be easily fixed by
adding signal handler to pg_dump so that it catches the signal and
issues a query cancel request.
Thoughts?
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese: http://www.sraoss.co.jp