Re: Cancelling idle in transaction state - Mailing list pgsql-hackers

From Joachim Wieland
Subject Re: Cancelling idle in transaction state
Date
Msg-id dc7b844e1001061337s7791d51dw19445f71f39cda09@mail.gmail.com
Whole thread Raw
In response to Re: Cancelling idle in transaction state  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: Cancelling idle in transaction state  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
On Fri, Jan 1, 2010 at 10:45 PM, Simon Riggs <simon@2ndquadrant.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.

Other ideas?


Joachim


pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: win32 socket definition
Next
From: Tom Lane
Date:
Subject: Re: win32 socket definition