> > In this case, SIGINT (query cancel) will not help, because > all locks > > held by the transaction will still be held. > > Wrong.
Really? Please point out where I am wrong in this: SESSION A: BEGIN TRANSACTION SESSION A: LOCK TABLE foo IN ACCESS EXCLUSIVE MODE SESSION B: SELECT * FROM foo <-- blocks (expected)! not-in-session: KILL -INT <pid_of_session_A> (at this point, <pid_of_session_A> is listed as "idle in transaction") SESSION B: <-- still blcoks.... SESSION A: ROLLBACK SESSION B: <-- now completes If I kill it with TERM instead of INT, SESSION B is released at that point. Am I missing something very obvious here? This is on: PostgreSQL 7.4.2 on i686-pc-linux-gnu, compiled by GCC 2.95.3 //Magnus ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly