On 11 March 2014 17:29, Atri Sharma <atri.j...@gmail.com> wrote: > > > > On Tue, Mar 11, 2014 at 10:56 PM, Simon Riggs <si...@2ndquadrant.com> wrote: >> >> On 11 March 2014 03:41, Tom Lane <t...@sss.pgh.pa.us> wrote: >> > Joe Conway <m...@joeconway.com> writes: >> >> I am probably missing something obvious, but why does the >> >> AccessShareLock remain held on a table after a SELECT statement is >> >> complete when in a transaction block? >> > >> > *Any* lock acquired by user command is held till end of transaction; >> > AccessShareLock isn't special. >> > >> > In general, releasing early would increase the risk of undesirable >> > behaviors such as tables changing definition mid-transaction. >> >> I thought "good question" at first, but the workaround is simple... >> just don't use multi-step transactions, submit each request as a >> separate transaction. >> >> > Wouldnt that tend to get inefficient?
Please outline your alternate proposal so we can judge the comparative efficiency. -- Simon Riggs http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers