Since I see, that Tom has implemented the "keep a AccessShareLock lock until
transaction end" philisophy I would like to state a protest.
This is a fundamental change in behavior and I would like to see
a vote on this.
The one example we already know is:
session1 session2
begin work; begin work;
select * from tenk1 limit 1; select * from tenk1 limit 1;
lock table tenk1; --now waits (why should it ?) lock table tenk1; -- NOTICE: Deadlock detected -->
ABORT
I think this is not acceptable in committed read isolation. The AccessShareLock
needs to be released after each statement finishes.
Thank you
Andreas