Re: 'Shutdown <= SmartShutdown' check while launching processes in postmaster.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: shveta malik <shveta(dot)malik(at)gmail(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: 'Shutdown <= SmartShutdown' check while launching processes in postmaster.
Date: 2024-02-21 04:31:52
Message-ID: 32420.1708489912@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

shveta malik <shveta(dot)malik(at)gmail(dot)com> writes:
> I would like to know that why we have 'Shutdown <= SmartShutdown'
> check before launching few processes (WalReceiver, WalSummarizer,
> AutoVacuum worker) while rest of the processes (BGWriter, WalWriter,
> Checkpointer, Archiver etc) do not have any such check. If I have to
> launch a new process, what shall be the criteria to decide if I need
> this check?

Children that are stopped by the "if (pmState == PM_STOP_BACKENDS)"
stanza in PostmasterStateMachine should not be allowed to start
again later if we are trying to shut down. (But "smart" shutdown
doesn't enforce that, since it's a very weak state that only
prohibits new client sessions.) The processes that are allowed
to continue beyond that point are ones that are needed to perform
the shutdown checkpoint, or useful to make it finish faster.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2024-02-21 05:06:38 Re: logical decoding and replication of sequences, take 2
Previous Message Michael Paquier 2024-02-21 04:31:12 Re: Add system identifier to backup manifest