On Thu, 11 Oct 2001, Michael Meskes wrote: > A customer's machine hangs from time to time. All we could find so far is > that postgres seems to be in state "idle in transaction": > > postgres 19317 0.0 0.3 8168 392 ? S Oct05 0:00 >/usr/lib/postgresql/bin/postmaster -D /var/lib/postgres/data > postgres 19983 0.0 0.8 8932 1020 ? S Oct05 0:01 postgres: postgres >rabatt 192.168.50.222 idle in transaction > postgres 21005 0.0 0.0 3484 4 ? S Oct06 0:00 >/usr/lib/postgresql/bin/psql -t -q -d template1 > postgres 21014 0.0 0.7 8892 952 ? S Oct06 0:01 postgres: postgres >rabatt [local] VACUUM waiting > postgres 21833 0.0 0.4 3844 572 ? S Oct06 0:00 >/usr/lib/postgresql/bin/pg_dump rabatt > postgres 21841 0.0 1.2 9716 1564 ? S Oct06 0:00 postgres: postgres >rabatt [local] COPY waiting > postgres 22135 0.0 0.9 8856 1224 ? S Oct06 0:00 postgres: postgres >rabatt 192.168.50.223 idle in transaction waiting > > I'm not sure what's happening here and I have no remote access to the > machine myself. Any idea what could be the reason for this? > > There may be some client processes running at the time the dump and the > vacuum commands are issued that have an open transaction doing nothing. That > is the just issued a BEGIN command. Thinking about it run some inserts at > the very same time, although that's not likely. > > Any hints are appreciated. Thanks in advance.
Well, it'd be likely to get in this state if the first transaction grabbed any write locks and then sat on them without committing or doing any more commands, since the vacuum would wait on that and the rest of the transactions will probably wait on the vacuum. Is that a possible situation? ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org