1 /*-------------------------------------------------------------------------
5 * Header file for background WAL summarization process.
7 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
10 * src/include/postmaster/walsummarizer.h
12 *-------------------------------------------------------------------------
14 #ifndef WALSUMMARIZER_H
15 #define WALSUMMARIZER_H
17 #include "access/xlogdefs.h"
19 extern PGDLLIMPORT
bool summarize_wal
;
20 extern PGDLLIMPORT
int wal_summary_keep_time
;
22 extern Size
WalSummarizerShmemSize(void);
23 extern void WalSummarizerShmemInit(void);
24 extern void WalSummarizerMain(char *startup_data
, size_t startup_data_len
) pg_attribute_noreturn();
26 extern void GetWalSummarizerState(TimeLineID
*summarized_tli
,
27 XLogRecPtr
*summarized_lsn
,
28 XLogRecPtr
*pending_lsn
,
30 extern XLogRecPtr
GetOldestUnsummarizedLSN(TimeLineID
*tli
,
32 extern void WakeupWalSummarizer(void);
33 extern void WaitForWalSummarization(XLogRecPtr lsn
);