Re: postmaster 8.2 eternally hangs in sempaphore lock acquiring

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Martin Pitt <martin(at)piware(dot)de>
Cc: PostgreSQL Bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: postmaster 8.2 eternally hangs in sempaphore lock acquiring
Date: 2007-03-29 17:49:23
Message-ID: 25275.1175190563@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Martin Pitt <martin(at)piware(dot)de> writes:
> https://launchpad.net/bugs/93042 has symbolic gdb backtraces of all
> three processes that are involved.

Are these really all the processes involved? The createdb process and
the autovac process are both waiting for someone else to give up the
BtreeVacuumLock, but that is never held for any long period, and it's
certainly not held by the guy trying to do InitPostgres.

I believe that the guy trying to do InitPostgres is blocked by the
createdb process --- it looks like he's trying to attach to the same
DB being used as a template for the createdb, and as of 8.2 we lock out
new entries to a template DB until the copy is complete.

It's possible that this is not a deadlock per se, but the aftermath of
someone having errored out without releasing the BtreeVacuumLock --- but
I don't entirely see how that could happen either, at least not without
a core dump scenario.

Is there anything in the postmaster log when this happens? Errors out
of _bt_start_vacuum would be particularly interesting...

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Martin Pitt 2007-03-29 18:12:53 Re: postmaster 8.2 eternally hangs in sempaphore lock acquiring
Previous Message Heikki Linnakangas 2007-03-29 17:32:06 Re: postmaster 8.2 eternally hangs in sempaphore lock acquiring