Uwe Schroeder wrote:
I've googled, but there's 0 hits.
I have an issue with a ton of "idle in transaction" backends.
What I noticed is when I look at pg_locks, pretty much all of the processes being
idle in transaction have an exclusive lock of locktype "virtualidx
"Idle in Transaction" occurs when a client has issued a BEGIN; and is
then just sitting there.
We had this problem extensively with our Java code some years back when
the PostgreSQL JDBC module was issuing a BEGIN; right after a COMMIT or
ROLLBACK when not in autocommit mode. An updated version of JDBC
postponed this automatic BEGIN until the first command was issued.
Since we had some connections which would sit idle for hours, this would
prevent VACUUM from cleaning anything newer than the oldest pending
transaction.
.
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general