Re: Allow interrupts on waiting standby - Mailing list pgsql-hackers

From Tsunakawa, Takayuki
Subject Re: Allow interrupts on waiting standby
Date
Msg-id 0A3221C70F24FB45833433255569204D1F6BE470@G01JPEXMBYT05
Whole thread Raw
In response to Re: Allow interrupts on waiting standby  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-hackers
From: Michael Paquier [mailto:michael.paquier@gmail.com]
> Oops, sorry for that, I quite mess up with this patch. The WaitLatch() call
> should still have WL_POSTMASTER_DEATH so as it can leave earlier, but yes
> I agree with your analysis that HandleStartupProcInterrupts() as this is
> part of the redo work.

Thank you, but did you remove WL_LATCH_SET from WaitLatch() intentionally?  I understood you added it for startup
processto respond quickly to events other than the postmaster death.  Why don't we restore WL_LATCH_SET?  I won't
objectto not adding the flag if there's a reason.
 

I'll mark this as ready for committer when I see WL_LATCH_SET added (optional) and you have reported that you did the
followingtest cases:
 

* Startup process vanishes immediately after postmaster dies, while it is waiting for a recovery conflict to be
resolved.

* Startup process vanishes immediately after "pg_ctl stop -m fast", while it is waiting for a recovery conflict to be
resolved.

* Startup process resumes WAL application when max_standby_{archive | streaming}_delay is changed from the default -1
toa short period, e.g. 10s, and "pg_ctl reload" is performed, while it is waiting for a recovery conflict to be
resolved.


> > Did Simon's committed patch solve the problem as expected?
> 
> Does not seem so, I'll let Simon comment on this matter...

Agreed.  I guess his patch for earlier releases should work if CHECK_FOR_INTERRUPTS() is replaced with
HandleStartupProcInterrupts().

Regards
Takayuki Tsunakawa


pgsql-hackers by date:

Previous
From: Konstantin Knizhnik
Date:
Subject: Parallel query execution with SPI
Next
From: Amit Langote
Date:
Subject: Foreign tables don't enforce the partition constraint