Re: corner case about replication and shutdown
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Fujii Masao <masao.fujii@gmail.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2011-04-03T23:46:55Z
Lists: pgsql-hackers
On Sat, Apr 2, 2011 at 4:51 AM, Fujii Masao <masao.fujii@gmail.com> wrote: > On Fri, Apr 1, 2011 at 11:11 PM, Robert Haas <robertmhaas@gmail.com> wrote: >> On Thu, Mar 31, 2011 at 11:12 PM, Fujii Masao <masao.fujii@gmail.com> wrote: >>> Another simple fix is to make walsender send SIGUSR1 to postmaster >>> so that it calls PostmasterStateMachine() in sigusr1_handler(), when it >>> marks itself as walsender. The attached patch does this. Thought? >> >> That looks OK to me. Have you tested it? > > Yes. I added the sleep just before MarkPostmasterChildWalSender() in > walsender.c, > compiled, started replication, and then requested smart shutdown as soon as > walsender was forked (i.e., during the sleep). Without the patch, the server got > stuck infinitely. With the patch, smart shutdown worked as expected. Cool. Committed. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company