PostgreSQL Source Code git master
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
bgwriter.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * bgwriter.h
4 * Exports from postmaster/bgwriter.c and postmaster/checkpointer.c.
5 *
6 * The bgwriter process used to handle checkpointing duties too. Now
7 * there is a separate process, but we did not bother to split this header.
8 *
9 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
10 *
11 * src/include/postmaster/bgwriter.h
12 *
13 *-------------------------------------------------------------------------
14 */
15#ifndef _BGWRITER_H
16#define _BGWRITER_H
17
18#include "parser/parse_node.h"
19#include "storage/block.h"
21#include "storage/smgr.h"
22#include "storage/sync.h"
23
24
25/* GUC options */
26extern PGDLLIMPORT int BgWriterDelay;
30
31pg_noreturn extern void BackgroundWriterMain(const void *startup_data, size_t startup_data_len);
32pg_noreturn extern void CheckpointerMain(const void *startup_data, size_t startup_data_len);
33
34extern void ExecCheckpoint(ParseState *pstate, CheckPointStmt *stmt);
35extern void RequestCheckpoint(int flags);
36extern void CheckpointWriteDelay(int flags, double progress);
37
38extern bool ForwardSyncRequest(const FileTag *ftag, SyncRequestType type);
39
40extern void AbsorbSyncRequests(void);
41
42extern Size CheckpointerShmemSize(void);
43extern void CheckpointerShmemInit(void);
44
45extern bool FirstCallSinceLastCheckpoint(void);
46
47#endif /* _BGWRITER_H */
PGDLLIMPORT int BgWriterDelay
Definition: bgwriter.c:58
bool ForwardSyncRequest(const FileTag *ftag, SyncRequestType type)
void AbsorbSyncRequests(void)
pg_noreturn void BackgroundWriterMain(const void *startup_data, size_t startup_data_len)
Definition: bgwriter.c:88
PGDLLIMPORT int CheckPointTimeout
Definition: checkpointer.c:157
pg_noreturn void CheckpointerMain(const void *startup_data, size_t startup_data_len)
Definition: checkpointer.c:195
void CheckpointerShmemInit(void)
Definition: checkpointer.c:973
PGDLLIMPORT int CheckPointWarning
Definition: checkpointer.c:158
bool FirstCallSinceLastCheckpoint(void)
PGDLLIMPORT double CheckPointCompletionTarget
Definition: checkpointer.c:159
void RequestCheckpoint(int flags)
void ExecCheckpoint(ParseState *pstate, CheckPointStmt *stmt)
void CheckpointWriteDelay(int flags, double progress)
Definition: checkpointer.c:785
Size CheckpointerShmemSize(void)
Definition: checkpointer.c:951
#define PGDLLIMPORT
Definition: c.h:1319
#define pg_noreturn
Definition: c.h:164
size_t Size
Definition: c.h:610
#define stmt
Definition: indent_codes.h:59
static int progress
Definition: pgbench.c:262
Definition: sync.h:51
SyncRequestType
Definition: sync.h:24
const char * type