"Steven Flatt" <[EMAIL PROTECTED]> writes: > 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.
No, that's not what the backtraces say. The autovac process is trying to get super-exclusive lock on a buffer (apparently in relation 16783 --- what is that?). There's no evidence in the stack trace that the TRUNCATE process has any conflicting buffer lock. What I think might be happening is a three-way deadlock involving these two and a third process that has the desired buffer lock. Have you got anything else that seems to be stuck? regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq