mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-30 19:00:29 +08:00
If the stats collector dies during Hot Standby, restart it.
This bug exists as far back as 9.0, when Hot Standby was introduced, so back-patch to all supported branches. Report and patch by Takayuki Tsunakawa, reviewed by Michael Paquier and Kuntal Ghosh.
This commit is contained in:
parent
92929a3e37
commit
e927f55fff
@ -1754,7 +1754,8 @@ ServerLoop(void)
|
||||
PgArchPID = pgarch_start();
|
||||
|
||||
/* If we have lost the stats collector, try to start a new one */
|
||||
if (PgStatPID == 0 && pmState == PM_RUN)
|
||||
if (PgStatPID == 0 &&
|
||||
(pmState == PM_RUN || pmState == PM_HOT_STANDBY))
|
||||
PgStatPID = pgstat_start();
|
||||
|
||||
/* If we need to signal the autovacuum launcher, do so now */
|
||||
@ -2902,7 +2903,7 @@ reaper(SIGNAL_ARGS)
|
||||
if (!EXIT_STATUS_0(exitstatus))
|
||||
LogChildExit(LOG, _("statistics collector process"),
|
||||
pid, exitstatus);
|
||||
if (pmState == PM_RUN)
|
||||
if (pmState == PM_RUN || pmState == PM_HOT_STANDBY)
|
||||
PgStatPID = pgstat_start();
|
||||
continue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user