Re: Cancelling idle in transaction state
Martijn van Oosterhout <kleptog@svana.org>
From: Martijn van Oosterhout <kleptog@svana.org>
To: Kris Jurka <books@ejurka.com>
Cc: Simon Riggs <simon@2ndQuadrant.com>, Joachim Wieland <joe@mcknight.de>, Tom Lane <tgl@sss.pgh.pa.us>, Hannu Krosing <hannu@2ndquadrant.com>, James Pye <lists@jwp.name>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2010-01-03T10:55:31Z
Lists: pgsql-hackers
On Fri, Jan 01, 2010 at 03:31:58PM -0500, Kris Jurka wrote: > The JDBC driver does want "cancel if active" behavior. The JDBC API > specifies Statement.cancel() where Statement is running one particular > backend query. So it really does want to cancel just that one query. > Already this is tough because of the asynchronous nature of the cancel > protocol and the inability to say exactly what should be cancelled. I've looked in the JDBC documentation but I don't quickly see how they expect this to work with transactions. What is being proposed seems to me to be: If statement active: put transaction in aborted state If no statement active: do nothing However, I see that the documentation wants to be able to abort a *specific* statement, which is not being proposed here. Can that be implemented on top of the current proposal? Have a nice day, -- Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/ > Please line up in a tree and maintain the heap invariant while > boarding. Thank you for flying nlogn airlines.