Re: Postgres "locked up" - Mailing list pgsql-general

From Tom Lane
Subject Re: Postgres "locked up"
Date
Msg-id 3333.1260489487@sss.pgh.pa.us
Whole thread Raw
In response to Re: Postgres "locked up"  ("Eric B. Ridge" <ebr@tcdi.com>)
Responses Re: Postgres "locked up"  ("Eric B. Ridge" <ebr@tcdi.com>)
List pgsql-general
"Eric B. Ridge" <ebr@tcdi.com> writes:
> On Dec 10, 2009, at 6:28 PM, Tom Lane wrote:
>> It looks like somehow the SInvalLock got stuck --- that would account
>> for both the stack traces you show.

> What's a SInvalLock?  I looked at the code/comments for ReceiveSharedInvalidMessages(), but it didn't make much sense
outof context. 

It's the lock that provides mutual exclusion for the shared-memory
data structures belonging to the shared-cache-invalidation subsystem.
Which doesn't help you much more than before.  But both those stack
traces looked like processes waiting to get access to sinval shared
memory.

>> I'm not sure though why a "reload" would appear to free things up.

> Yeah, that's the most bizarre part.  Damn near all the backends issued various commands, then froze again.  "reload"
seemedthe quickest way, under pressure, to send all the backends some kind of signal.  I didn't actually expect it to
doanything, tho. 

sinval gets touched during startup of most every SQL command, so it's
not too hard to credit that a locking problem there would result in
behavior like that.  I confess bafflement about the "reload" interaction
though.  It seems likely that the root cause is having somehow lost a
wakeup signal somewhere, but I don't quite see how that would lead
to this behavior.

            regards, tom lane

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Restore time differences between full database dumps and separate schema/data dumps
Next
From: Simon Windsor
Date:
Subject: PIVOT tables and crosstab