PostgreSQL Source Code git master
proctypelist.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * proctypelist.h
4 *
5 * The list of process types is kept on its own source file for use by
6 * automatic tools. The exact representation of a process type is
7 * determined by the PG_PROCTYPE macro, which is not defined in this
8 * file; it can be defined by the caller for special purposes.
9 *
10 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
11 * Portions Copyright (c) 1994, Regents of the University of California
12 *
13 * IDENTIFICATION
14 * src/include/postmaster/proctypelist.h
15 *
16 *-------------------------------------------------------------------------
17 */
18
19/* there is deliberately not an #ifndef PROCTYPELIST_H here */
20
21/*
22 * WAL senders start their life as regular backend processes, and change their
23 * type after authenticating the client for replication. We list it here for
24 * PostmasterChildName() but cannot launch them directly.
25 */
26
27/*
28 * List of process types (symbol, description, Main function, shmem_attach)
29 * entries.
30 */
31
32
33/* bktype, description, main_func, shmem_attach */
41PG_PROCTYPE(B_DEAD_END_BACKEND, gettext_noop("dead-end client backend"), BackendMain, true)
42PG_PROCTYPE(B_INVALID, gettext_noop("unrecognized"), NULL, false)
46PG_PROCTYPE(B_STANDALONE_BACKEND, gettext_noop("standalone backend"), NULL, false)
49PG_PROCTYPE(B_WAL_SENDER, gettext_noop("walsender"), NULL, true)
void AutoVacLauncherMain(const void *startup_data, size_t startup_data_len)
Definition: autovacuum.c:378
void AutoVacWorkerMain(const void *startup_data, size_t startup_data_len)
Definition: autovacuum.c:1390
void StartupProcessMain(const void *startup_data, size_t startup_data_len)
Definition: startup.c:216
void BackendMain(const void *startup_data, size_t startup_data_len)
void BackgroundWorkerMain(const void *startup_data, size_t startup_data_len)
Definition: bgworker.c:721
void BackgroundWriterMain(const void *startup_data, size_t startup_data_len)
Definition: bgwriter.c:88
#define gettext_noop(x)
Definition: c.h:1199
void CheckpointerMain(const void *startup_data, size_t startup_data_len)
Definition: checkpointer.c:195
return false
Definition: isn.c:135
return true
Definition: isn.c:130
#define PG_PROCTYPE(bktype, description, main_func, shmem_attach)
void IoWorkerMain(const void *startup_data, size_t startup_data_len)
@ B_WAL_SUMMARIZER
Definition: miscadmin.h:367
@ B_WAL_WRITER
Definition: miscadmin.h:368
@ B_WAL_RECEIVER
Definition: miscadmin.h:366
@ B_CHECKPOINTER
Definition: miscadmin.h:363
@ B_WAL_SENDER
Definition: miscadmin.h:347
@ B_IO_WORKER
Definition: miscadmin.h:364
@ B_LOGGER
Definition: miscadmin.h:374
@ B_STARTUP
Definition: miscadmin.h:365
@ B_BG_WORKER
Definition: miscadmin.h:346
@ B_INVALID
Definition: miscadmin.h:339
@ B_STANDALONE_BACKEND
Definition: miscadmin.h:350
@ B_BG_WRITER
Definition: miscadmin.h:362
@ B_BACKEND
Definition: miscadmin.h:342
@ B_ARCHIVER
Definition: miscadmin.h:361
@ B_AUTOVAC_LAUNCHER
Definition: miscadmin.h:344
@ B_SLOTSYNC_WORKER
Definition: miscadmin.h:348
@ B_DEAD_END_BACKEND
Definition: miscadmin.h:343
@ B_AUTOVAC_WORKER
Definition: miscadmin.h:345
char * launcher
Definition: pg_regress.c:103
void PgArchiverMain(const void *startup_data, size_t startup_data_len)
Definition: pgarch.c:219
void ReplSlotSyncWorkerMain(const void *startup_data, size_t startup_data_len)
Definition: slotsync.c:1349
void SysLoggerMain(const void *startup_data, size_t startup_data_len)
Definition: syslogger.c:165
void WalReceiverMain(const void *startup_data, size_t startup_data_len)
Definition: walreceiver.c:152
void WalSummarizerMain(const void *startup_data, size_t startup_data_len)
void WalWriterMain(const void *startup_data, size_t startup_data_len)
Definition: walwriter.c:88