We are running PostgreSQL 8.2.4 with quite highly updated millions rows
It comes sometimes to get some "idle in transaction" processes, which
doesn't have first really viewable effect out of giving very bad estimated
numbers for pgclass.reltuples and, if we let them run as it is, block the
autovacuum from releasing rows, and after few days some worse problems.
Now we are able to detect these "idle in transaction" processes, but what to
do with them ?
What to do to avoid such situation? How to find the bad request which put
the process in this state? From the time it is idle in transaction, we can't
see the query in the pg_lock table anymore.
How to deal with such process when it is already idle in transaction? can we
simply kill it? It is a backend from pgpool. Can we simply restart it (how)
without restarting all the database?
Thanks for help
pgsql-admin by date
|Next:||From: Achilleas Mantzios||Date: 2007-10-30 09:11:01|
|Subject: Re: How to kill process "idle in transaction"|
|Previous:||From: Phillip Smith||Date: 2007-10-30 04:43:03|
|Subject: Re: High system CPU usage during query run|