Re: troubleshooting "idle in transaction"

From: Peter Koczan <pjkoczan(at)gmail(dot)com>
To: Dan Harris <fbsd(at)drivefaster(dot)net>
Cc: pgsql-admin(at)postgresql(dot)org
Subject: Re: troubleshooting "idle in transaction"
Date: 2007-06-07 00:51:15
Message-ID: 46675683.6080601@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Check the pg_locks system view in the pg_catalog schema. It will tell
you a wealth of information.

Peter

Dan Harris wrote:
> Greetings..
>
> I'm running 8.0.12 and the system has been very stable for years now
> with no significant application changes. I am using
> Apache::Session::Postgres in a web application to store session
> state. This has really been flawless for us so far, but lately I've
> caught a few occurrences where I will see in GNU top, the following:
>
> 9136 postgres 16 0 546m 9.8m 8080 S 0 0.0 0:00.00 1
> postgres: postgres sessions harvard(49197) idle in transaction
> 10892 postgres 16 0 546m 9180 7356 S 0 0.0 0:00.01 3
> postgres: postgres sessions harvard(49649) SELECT waiting
> 12174 postgres 16 0 546m 9172 7348 S 0 0.0 0:00.00 3
> postgres: postgres sessions harvard(51158) SELECT waiting
> 12175 postgres 16 0 546m 9152 7328 S 0 0.0 0:00.01 1
> postgres: postgres sessions harvard(51159) SELECT waiting
> 12176 postgres 16 0 546m 9112 7288 S 0 0.0 0:00.01 1
> postgres: postgres sessions harvard(51160) SELECT waiting
>
> I can connect to the database fine and select from it when this
> occurs, but I'm guessing that the owner of that particular session row
> is refreshing their browser and seeing it 'hang', causing the lock
> jam. I know this could potentially be a problem with Apache::Session
> logic, but that module has not been updated for as long as I can
> remember, so I'm wondering if this could be a database issue somehow?
>
> Previously, I have just killed the process that's idle in transaction,
> then things clean up.. However, this doesn't feel very clean.
>
> Can anyone recommend a good process for learning why exactly that
> transaction is not completing? Or, is there a postgresql.conf setting
> that can automatically kill these errant locks?
>
> -Dan
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
> http://archives.postgresql.org
>

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Alvaro Herrera 2007-06-07 01:52:37 Re: 8.2.4 Won't Build 8.1 Functional Indexes
Previous Message Tom Lane 2007-06-06 23:41:26 Re: 8.2.4 Won't Build 8.1 Functional Indexes