18#ifndef PG_SUBSCRIPTION_REL_H
19#define PG_SUBSCRIPTION_REL_H
23#include "catalog/pg_subscription_rel_d.h"
60#ifdef EXPOSE_TO_CLIENT_CODE
66#define SUBREL_STATE_INIT 'i'
67#define SUBREL_STATE_DATASYNC 'd'
69#define SUBREL_STATE_FINISHEDCOPY 'f'
71#define SUBREL_STATE_SYNCDONE 's'
73#define SUBREL_STATE_READY 'r'
76#define SUBREL_STATE_UNKNOWN '\0'
77#define SUBREL_STATE_SYNCWAIT 'w'
78#define SUBREL_STATE_CATCHUP 'c'
#define BEGIN_CATALOG_STRUCT
#define DECLARE_UNIQUE_INDEX_PKEY(name, oid, oidmacro, tblname, decl)
#define BKI_LOOKUP(catalog)
#define END_CATALOG_STRUCT
#define CATALOG(name, oid, oidmacro)
#define MAKE_SYSCACHE(name, idxname, nbuckets)
static SequenceItem * sequences
void UpdateSubscriptionRelState(Oid subid, Oid relid, char state, XLogRecPtr sublsn, bool already_locked)
FormData_pg_subscription_rel
void RemoveSubscriptionRel(Oid subid, Oid relid)
char GetSubscriptionRelState(Oid subid, Oid relid, XLogRecPtr *sublsn)
void AddSubscriptionRelState(Oid subid, Oid relid, char state, XLogRecPtr sublsn, bool retain_lock)
bool HasSubscriptionTables(Oid subid)
void UpdateDeadTupleRetentionStatus(Oid subid, bool active)
END_CATALOG_STRUCT typedef FormData_pg_subscription_rel * Form_pg_subscription_rel
List * GetSubscriptionRelations(Oid subid, bool tables, bool sequences, bool not_ready)