| From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
|---|---|
| To: | Joachim Wieland <joe(at)mcknight(dot)de> |
| Cc: | Simon Riggs <simon(at)2ndquadrant(dot)com>, Kris Jurka <books(at)ejurka(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Hannu Krosing <hannu(at)2ndquadrant(dot)com>, James Pye <lists(at)jwp(dot)name>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Cancelling idle in transaction state |
| Date: | 2010-01-06 21:43:29 |
| Message-ID: | 603c8f071001061343y27c78aa1q1122d2a954e94aa6@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Wed, Jan 6, 2010 at 4:37 PM, Joachim Wieland <joe(at)mcknight(dot)de> wrote:
> On Fri, Jan 1, 2010 at 10:45 PM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
>> CancelRequest's behaviour currently equates to SIGINT, so
>> processCancelRequest() can only use SIGINT if SIGINT's behaviour remains
>> same.
>>
>> I would recommend we make SIGINT do cancel-anything, and handle
>> everything else via SIGUSR1, including CancelRequest.
>
> Actually, now that I look into it, if we wanted to send SIGUSR1 with a
> reason to a backend from within postmaster (where
> processCancelRequest() lives), we'd need to have shared memory access
> in postmaster which we have not.
>
> So the easiest way would be to keep SIGINTs behavior (cancel running
> statements, not idle transactions) and allow cancellation of idle
> transactions only via SQL but not via command line.
+1. That seems like the right approach to me.
...Robert
| From | Date | Subject | |
|---|---|---|---|
| Next Message | David E. Wheeler | 2010-01-06 21:45:45 | Re: Status of plperl inter-sp calling |
| Previous Message | Tom Lane | 2010-01-06 21:42:09 | Re: win32 socket definition |