Re: Hot standby, recovery infra - Mailing list pgsql-hackers

From Simon Riggs
Subject Re: Hot standby, recovery infra
Date
Msg-id 1233154068.2327.2385.camel@ebony.2ndQuadrant
Whole thread Raw
In response to Re: Hot standby, recovery infra  (Fujii Masao <masao.fujii@gmail.com>)
Responses Re: Hot standby, recovery infra
List pgsql-hackers
On Wed, 2009-01-28 at 23:19 +0900, Fujii Masao wrote:

> > @@ -355,6 +359,27 @@ BackgroundWriterMain(void)
> >       */
> >      PG_SETMASK(&UnBlockSig);
> >
> > +    BgWriterRecoveryMode = IsRecoveryProcessingMode();
> > +
> > +    if (BgWriterRecoveryMode)
> > +        elog(DEBUG1, "bgwriter starting during recovery");
> > +    else
> > +        InitXLOGAccess();
> 
> Why is InitXLOGAccess() called also here when bgwriter is started after
> recovery? That is already called by AuxiliaryProcessMain().

InitXLOGAccess() sets the timeline and also gets the latest record
pointer. If the bgwriter is started in recovery these values need to be
reset later. It's easier to call it twice.

> > @@ -1302,7 +1314,7 @@ ServerLoop(void)
> >           * state that prevents it, start one.  It doesn't matter if this
> >           * fails, we'll just try again later.
> >           */
> > -        if (BgWriterPID == 0 && pmState == PM_RUN)
> > +        if (BgWriterPID == 0 && (pmState == PM_RUN || pmState == PM_RECOVERY))
> >              BgWriterPID = StartBackgroundWriter();
> 
> Likewise, we should try to start also the stats collector during recovery?

We did in the previous patch...

> > @@ -2103,7 +2148,8 @@ XLogFileInit(uint32 log, uint32 seg,
> >          unlink(tmppath);
> >      }
> >
> > -    elog(DEBUG2, "done creating and filling new WAL file");
> > +    XLogFileName(tmppath, ThisTimeLineID, log, seg);
> > +    elog(DEBUG2, "done creating and filling new WAL file %s", tmppath);
> 
> This debug message is somewhat confusing, because the WAL file
> represented as "tmppath" might have been already created by
> previous XLogFileInit() via InstallXLogFileSegment().

I think those are just for debugging and can be removed.

-- Simon Riggs           www.2ndQuadrant.comPostgreSQL Training, Services and Support



pgsql-hackers by date:

Previous
From: KaiGai Kohei
Date:
Subject: Re: How to get SE-PostgreSQL acceptable
Next
From: Robert Haas
Date:
Subject: Re: How to get SE-PostgreSQL acceptable