RE: Quite strange crash - Mailing list pgsql-hackers

From Mikheev, Vadim
Subject RE: Quite strange crash
Date
Msg-id 8F4C99C66D04D4118F580090272A7A234D3253@sectorbase1.sectorbase.com
Whole thread Raw
In response to Quite strange crash  (Denis Perchine <dyp@perchine.com>)
List pgsql-hackers
> Yup.  I had just come to the realization that we'd be best 
> off to treat the *entire* period from SpinAcquire to SpinRelease
> as a critical section for the purposes of die(). That is, response
> to SIGTERM will be held off until we have released the spinlock.
> Most of the places where we grab spinlocks would have to make such
> a critical section anyway, at least for large parts of the time that
> they are holding the spinlock, because they are manipulating shared
> data structures and the instantaneous intermediate states aren't always
> self-consistent.  So we might as well follow the KISS principle and
> just do START_CRIT_SECTION in SpinAcquire and END_CRIT_SECTION in
> SpinRelease.
> 
> Vadim, any objection?

No one for the moment. If we'll just add XXX_CRIT_SECTION
to SpinXXX funcs without changing anything else then it will be easy
to remove them later (in the event we'll find any problems with this),
so - do it.

Vadim


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Quite strange crash
Next
From: Michael J Schout
Date:
Subject: Re: Re: Beta2 ... ?