Re: Stefan's bug (was: max_standby_delay considered harmful) - Mailing list pgsql-hackers

From Simon Riggs
Subject Re: Stefan's bug (was: max_standby_delay considered harmful)
Date
Msg-id 1274170250.28911.1635.camel@ebony
Whole thread Raw
In response to Re: Stefan's bug (was: max_standby_delay considered harmful)  (Fujii Masao <masao.fujii@gmail.com>)
Responses Re: Stefan's bug (was: max_standby_delay considered harmful)
List pgsql-hackers
On Tue, 2010-05-18 at 16:05 +0900, Fujii Masao wrote:
> >>> >> ISTM that we can use XLogCtl->SharedRecoveryInProgress for that.
> >>> >> Is this OK?
> >>> >
> >>> > That can change state at any time. Would that work?
> >>>
> >>> Yes. XLogCtl->SharedRecoveryInProgress is set to TRUE only when
> >>> XLogCtl structure is initialized (i.e., XLOGShmemInit), and it's
> >>> set to FALSE only at the end of recovery.
> >>
> >> You should be using RecoveryInProgress()
> >
> > Isn't access to a bool variable atomic?
> 
> If it's not atomic, I'll add the following comment into CancelBackup():
> 
>     Don't bother with lock to access XLogCtl->SharedRecoveryInProgress,
>     because there should be no other processes running when this code
>     is reached.

Call it via a function. There is no need for postmaster to know the
innards of xlog.c, which could change in future. Modularity.

-- Simon Riggs           www.2ndQuadrant.com



pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: Clarifications of licences on pgfoundry
Next
From: Dave Page
Date:
Subject: Re: Clarifications of licences on pgfoundry