Re: Shutting down server from a backend process, e.g. walrceiver

Поиск
Список
Период
Сортировка
От fazool mein
Тема Re: Shutting down server from a backend process, e.g. walrceiver
Дата
Msg-id AANLkTimF+H78eLWUM0uH64WSja5OzYH7gBbkC-ZE_15G@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Shutting down server from a backend process, e.g. walrceiver  (Fujii Masao <masao.fujii@gmail.com>)
Ответы Re: Shutting down server from a backend process, e.g. walrceiver  (Fujii Masao <masao.fujii@gmail.com>)
Список pgsql-hackers

On Mon, Sep 20, 2010 at 9:44 PM, Fujii Masao <masao.fujii@gmail.com> wrote:
On Tue, Sep 21, 2010 at 9:48 AM, fazool mein <fazoolmein@gmail.com> wrote:
> Hi,
>
> I want to shut down the server under certain conditions that can be checked
> inside a backend process. For instance, while running symmetric replication,
> if the primary dies, I want the the walreceiver to detect that and shutdown
> the standby. The reason for shutdown is that I want to execute some other
> stuff before I start the standby as a primary. Creating a trigger file
> doesn't help as it converts the standby into primary at run time.
>
> Using proc_exit() inside walreceiver only terminates the walreceiver
> process, which postgres starts again. The other way I see is using
> ereport(PANIC, ...). Is there some other way to shutdown the main server
> from within a backend process?

Are you going to change the source code? If yes, you might be able to
do that by making walreceiver send the shutdown signal to postmaster.


Yes, I'll be modifying the code. In the walreceiver, I used the following to send a shutdown to the postmaster:

kill(getppid(), SIGTERM);
 
If no, I think that a straightforward approach is to use a clusterware
like pacemaker. That is, you need to make a clusterware periodically
check the master and cause the standby to end when detecting the crash
of the master.


This was another option, but I have to modify the code for this particular case.

Thanks for your help.

Regards,


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: .gitignore files, take two
Следующее
От: fazool mein
Дата:
Сообщение: Re: Shutting down server from a backend process, e.g. walrceiver