From 2c7615f77b8d84130d304365aa2235eea7b5949c Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Wed, 15 Sep 2021 13:16:00 -0700 Subject: [PATCH] process startup: Initialize PgStartTime earlier in single user mode. An upcoming patch splits single user mode handling out of PostgresMain(). The startup time only needs to be determined in single user mode. Currently the initialization happens late, which makes the split a bit harder. As postmaster determines the time earlier it makes sense to move the time for single user mode to a roughly similar point in time. Reviewd-By: Kyotaro Horiguchi Author: Andres Freund Discussion: https://postgr.es/m/20210802164124.ufo5buo4apl6yuvs@alap3.anarazel.de --- src/backend/tcop/postgres.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c index 3f9ed549f9..82d22e4eed 100644 --- a/src/backend/tcop/postgres.c +++ b/src/backend/tcop/postgres.c @@ -4052,6 +4052,12 @@ PostgresMain(int argc, char *argv[], InitializeMaxBackends(); CreateSharedMemoryAndSemaphores(); + + /* + * Remember stand-alone backend startup time, roughly at the same + * point during startup that postmaster does so. + */ + PgStartTime = GetCurrentTimestamp(); } /* @@ -4161,12 +4167,6 @@ PostgresMain(int argc, char *argv[], initStringInfo(&row_description_buf); MemoryContextSwitchTo(TopMemoryContext); - /* - * Remember stand-alone backend startup time - */ - if (!IsUnderPostmaster) - PgStartTime = GetCurrentTimestamp(); - /* * POSTGRES main processing loop begins here *