Add BackendType for standalone backends

All backends should have a BackendType to enable statistics reporting
per BackendType.

Add a new BackendType for standalone backends, B_STANDALONE_BACKEND (and
alphabetize the BackendTypes). Both the bootstrap backend and single
user mode backends will have BackendType B_STANDALONE_BACKEND.

Author: Melanie Plageman <melanieplageman@gmail.com>
Reviewed-by: Andres Freund <andres@anarazel.de>
Discussion: https://www.postgresql.org/message-id/CAAKRu_aaq33UnG4TXq3S-OSXGWj1QGf0sU%2BECH4tNwGFNERkZA%40mail.gmail.com
This commit is contained in:
Andres Freund 2022-08-22 20:22:50 -07:00
parent cd063344fb
commit 0c679464a8
2 changed files with 14 additions and 8 deletions

View File

@ -176,6 +176,8 @@ InitStandaloneProcess(const char *argv0)
{ {
Assert(!IsPostmasterEnvironment); Assert(!IsPostmasterEnvironment);
MyBackendType = B_STANDALONE_BACKEND;
/* /*
* Start our win32 signal implementation * Start our win32 signal implementation
*/ */
@ -255,6 +257,9 @@ GetBackendTypeDesc(BackendType backendType)
case B_INVALID: case B_INVALID:
backendDesc = "not initialized"; backendDesc = "not initialized";
break; break;
case B_ARCHIVER:
backendDesc = "archiver";
break;
case B_AUTOVAC_LAUNCHER: case B_AUTOVAC_LAUNCHER:
backendDesc = "autovacuum launcher"; backendDesc = "autovacuum launcher";
break; break;
@ -273,6 +278,12 @@ GetBackendTypeDesc(BackendType backendType)
case B_CHECKPOINTER: case B_CHECKPOINTER:
backendDesc = "checkpointer"; backendDesc = "checkpointer";
break; break;
case B_LOGGER:
backendDesc = "logger";
break;
case B_STANDALONE_BACKEND:
backendDesc = "standalone backend";
break;
case B_STARTUP: case B_STARTUP:
backendDesc = "startup"; backendDesc = "startup";
break; break;
@ -285,12 +296,6 @@ GetBackendTypeDesc(BackendType backendType)
case B_WAL_WRITER: case B_WAL_WRITER:
backendDesc = "walwriter"; backendDesc = "walwriter";
break; break;
case B_ARCHIVER:
backendDesc = "archiver";
break;
case B_LOGGER:
backendDesc = "logger";
break;
} }
return backendDesc; return backendDesc;

View File

@ -316,18 +316,19 @@ extern void SwitchBackToLocalLatch(void);
typedef enum BackendType typedef enum BackendType
{ {
B_INVALID = 0, B_INVALID = 0,
B_ARCHIVER,
B_AUTOVAC_LAUNCHER, B_AUTOVAC_LAUNCHER,
B_AUTOVAC_WORKER, B_AUTOVAC_WORKER,
B_BACKEND, B_BACKEND,
B_BG_WORKER, B_BG_WORKER,
B_BG_WRITER, B_BG_WRITER,
B_CHECKPOINTER, B_CHECKPOINTER,
B_LOGGER,
B_STANDALONE_BACKEND,
B_STARTUP, B_STARTUP,
B_WAL_RECEIVER, B_WAL_RECEIVER,
B_WAL_SENDER, B_WAL_SENDER,
B_WAL_WRITER, B_WAL_WRITER,
B_ARCHIVER,
B_LOGGER,
} BackendType; } BackendType;
extern PGDLLIMPORT BackendType MyBackendType; extern PGDLLIMPORT BackendType MyBackendType;