Normally I get "Idle in Transaction" when there is already a connection which is holding a lock on a database object (e.g. a table). You've to check if there is a query holding a lock which causes all the other transactions to go in "Idle in Transaction" state. Look for other locks than AccesShareLock in the pg_locks view e.g. ExclusiveLock. Or maybe the vacuum process is locking a table. - Robert manugarciac@xxxxxxxxxxx wrote: > I see that every once in a while I get an Idle in Transaction that never > ends. This eventually becames a problem, as this Idle in Transaction holds > AccessShareLocks. Even if it didn't, if I reach the maximum number of > transactions my application dies. Is there any way to know what the > transaction did in the past so that I can now which particular query causes > this problem within my application? Or at least a way to set a timeout to > this transactions? The ideal solution would be to avoid it from happening, > but at least a timeout would make it less dangerous. > -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general