47#define WAIT_LSN_TYPE_COUNT (WAIT_LSN_TYPE_PRIMARY_FLUSH + 1)
#define FLEXIBLE_ARRAY_MEMBER
pairingheap_node heapNode
WaitLSNProcInfo procInfos[FLEXIBLE_ARRAY_MEMBER]
pg_atomic_uint64 minWaitedLSN[WAIT_LSN_TYPE_COUNT]
pairingheap waitersHeap[WAIT_LSN_TYPE_COUNT]
void WaitLSNShmemInit(void)
void WaitLSNCleanup(void)
PGDLLIMPORT WaitLSNState * waitLSNState
#define WAIT_LSN_TYPE_COUNT
XLogRecPtr GetCurrentLSNForWaitType(WaitLSNType lsnType)
WaitLSNResult WaitForLSN(WaitLSNType lsnType, XLogRecPtr targetLSN, int64 timeout)
@ WAIT_LSN_RESULT_NOT_IN_RECOVERY
@ WAIT_LSN_RESULT_TIMEOUT
@ WAIT_LSN_RESULT_SUCCESS
@ WAIT_LSN_TYPE_PRIMARY_FLUSH
@ WAIT_LSN_TYPE_STANDBY_REPLAY
@ WAIT_LSN_TYPE_STANDBY_FLUSH
@ WAIT_LSN_TYPE_STANDBY_WRITE
void WaitLSNWakeup(WaitLSNType lsnType, XLogRecPtr currentLSN)
Size WaitLSNShmemSize(void)