mirror of
https://github.com/postgres/postgres.git
synced 2026-06-09 08:42:38 -04: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
1 changed files with 3 additions and 2 deletions
|
|
@ -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 a new issue