From 149c6ec7e55b19217d081dbf21314588ab979837 Mon Sep 17 00:00:00 2001 From: Tatsuo Ishii Date: Fri, 8 Aug 2025 11:44:26 +0900 Subject: [PATCH v1] Emit warning if life check has not started yet. Currently lifecheck emits a log only when life check is ready. This is inconvenient for admins since they need to watch log file anticipating until life check is ready. This commit changes life check to emit warnings periodically until life check has started. The interval of the warnings is wd_interval * 10 seconds. However for the first time at lifecheck starting, no warning is emitted since it is likely that lifecheck is not ready at that point. --- src/watchdog/wd_lifecheck.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/watchdog/wd_lifecheck.c b/src/watchdog/wd_lifecheck.c index 5830d82af..0694a2228 100644 --- a/src/watchdog/wd_lifecheck.c +++ b/src/watchdog/wd_lifecheck.c @@ -378,6 +378,7 @@ lifecheck_main(void) { sigjmp_buf local_sigjmp_buf; int i; + bool need_life_check_warning = false; ereport(DEBUG1, (errmsg("I am watchdog lifecheck child with pid:%d", getpid()))); @@ -424,6 +425,14 @@ lifecheck_main(void) /* wait until ready to go */ while (WD_OK != is_wd_lifecheck_ready()) { + /* + * For the first time we do not emit warning since it is likely the + * life check is not ready. + */ + if (need_life_check_warning) + ereport(WARNING, + (errmsg("watchdog: lifecheck has not started yet"))); + need_life_check_warning = true; sleep(pool_config->wd_interval * 10); } -- 2.25.1