1/*-------------------------------------------------------------------------
3 * Exports from replication/logical/origin.c
5 * Copyright (c) 2013-2025, PostgreSQL Global Development Group
7 * src/include/replication/origin.h
8 *-------------------------------------------------------------------------
30 #define XLOG_REPLORIGIN_SET 0x00
31 #define XLOG_REPLORIGIN_DROP 0x10
33 #define InvalidRepOriginId 0
34 #define DoNotReplicateId PG_UINT16_MAX
37 * To avoid needing a TOAST table for pg_replication_origin, we limit
38 * replication origin names to 512 bytes. This should be more than enough for
41 #define MAX_RONAME_LEN 512
50/* API for querying & manipulating replication origins */
57/* API for querying & manipulating replication progress tracking */
61 bool go_backward,
bool wal_log);
70/* Checkpoint/Startup integration */
79/* shared memory allocation */
83#endif /* PG_ORIGIN_H */
RepOriginId replorigin_by_name(const char *roname, bool missing_ok)
Size ReplicationOriginShmemSize(void)
RepOriginId replorigin_create(const char *roname)
void replorigin_session_reset(void)
void replorigin_session_advance(XLogRecPtr remote_commit, XLogRecPtr local_commit)
PGDLLIMPORT XLogRecPtr replorigin_session_origin_lsn
bool replorigin_by_oid(RepOriginId roident, bool missing_ok, char **roname)
void replorigin_desc(StringInfo buf, XLogReaderState *record)
XLogRecPtr replorigin_get_progress(RepOriginId node, bool flush)
struct xl_replorigin_drop xl_replorigin_drop
const char * replorigin_identify(uint8 info)
PGDLLIMPORT int max_active_replication_origins
void StartupReplicationOrigin(void)
void replorigin_drop_by_name(const char *name, bool missing_ok, bool nowait)
void replorigin_advance(RepOriginId node, XLogRecPtr remote_commit, XLogRecPtr local_commit, bool go_backward, bool wal_log)
void replorigin_session_setup(RepOriginId node, int acquired_by)
void CheckPointReplicationOrigin(void)
PGDLLIMPORT RepOriginId replorigin_session_origin
XLogRecPtr replorigin_session_get_progress(bool flush)
void ReplicationOriginShmemInit(void)
struct xl_replorigin_set xl_replorigin_set
PGDLLIMPORT TimestampTz replorigin_session_origin_timestamp
void replorigin_redo(XLogReaderState *record)