On 1/17/08, Alvaro Herrera <alvherre@commandprompt.com> wrote:
> > This isn't a postgres deadlock per se, but the end result is that two
> > postgres backends are stuck, each waiting on a PGSemaphoreLock that the
> > other presumably has. The processes have been stuck for hours.
>
> Can you reproduce this problem at will?
Well we have a bunch of test runs (at least a few dozen) that do a
similar thing, but only this one seems to be stuck. Still, I imagine
I can reproduce by doing enough updates/deletes to interest the
autovacuumer immediately followed by executing the fn_clean_tables()
function -- however not sure of the precise timing to get into this
state.
> Are the processes still running (sleeping, rather) so that we can try to
> examine them more deeply?
Yes, the processes are still "sleeping" in the same state. Just did
another bt a few minutes ago and they're the exact same. Don't
imagine the processes are going to be moving much...
Steve