Edoardo Panfili <edoardo@xxxxxxxx> writes: > I have a servlet that uses connection pools. > The servlet do "LOCK table,table2,table3,table4" > then do some select (I am testing the code, I will put the update in the > future) an then I close instruction and connection. > The first 4 executions of the servlet goes well, the 5th hangs. > Afther that I use "psql" to do the last query (the one that hangs the > system) of the servlet, also psql hangs. Look into the pg_locks view to find out what it's blocked on. Note that LOCK by default gets an ACCESS EXCLUSIVE lock, which means it will be blocked by *any* pre-existing access, even an open transaction that merely read the table awhile back. Are you sure you really need such a strong lock? regards, tom lane