Re: BUG #12833: Cannot cancel query or terminate backend if it client is SIGSTOPed

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #12833: Cannot cancel query or terminate backend if it client is SIGSTOPed
Дата
Msg-id 26913.1425576802@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BUG #12833: Cannot cancel query or terminate backend if it client is SIGSTOPed  (eshkinkot@gmail.com)
Ответы Re: BUG #12833: Cannot cancel query or terminate backend if it client is SIGSTOPed  (Andres Freund <andres@2ndquadrant.com>)
Список pgsql-bugs
eshkinkot@gmail.com writes:
> I run this command in bash:
> $ ../bin/psql -X -At -c 'copy (select * from generate_series(1, 100000000))
> to stdout' & ( sleep 2; kill -STOP $!; )

> $ ps f --ppid $$
>   PID TTY      STAT   TIME COMMAND
> 24773 pts/23   R+     0:00 ps f --ppid 5021
> 24685 pts/23   T      0:00 ../bin/psql -X -At -c copy (select * from
> generate_series(1, 100000000)) to stdout

> Now psql is stopped and I try to cancel it backend with
> pg_cancel_backend and pg_terminate_backend, but it not canceled or stopped.

[ shrug... ] It'll probably terminate the query whenever the kernel
returns from send().  There aren't a lot of options here: the only
way we could get out of this without waiting for the client is a
catastrophic termination of the session, which is not really what
either of those operations authorizes.  There's no way to do anything
less drastic without breaking protocol sync.

            regards, tom lane

В списке pgsql-bugs по дате отправления:

Предыдущее
От: eshkinkot@gmail.com
Дата:
Сообщение: BUG #12833: Cannot cancel query or terminate backend if it client is SIGSTOPed
Следующее
От: Andres Freund
Дата:
Сообщение: Re: BUG #12833: Cannot cancel query or terminate backend if it client is SIGSTOPed