PostgreSQL Source Code git master
|
#include "access/xlogreader.h"
#include "lib/stringinfo.h"
#include "storage/lockdefs.h"
#include "storage/sinval.h"
Go to the source code of this file.
Data Structures | |
struct | xl_standby_locks |
struct | xl_running_xacts |
struct | xl_invalidations |
Macros | |
#define | XLOG_STANDBY_LOCK 0x00 |
#define | XLOG_RUNNING_XACTS 0x10 |
#define | XLOG_INVALIDATIONS 0x20 |
#define | MinSizeOfInvalidations offsetof(xl_invalidations, msgs) |
Typedefs | |
typedef struct xl_standby_locks | xl_standby_locks |
typedef struct xl_running_xacts | xl_running_xacts |
typedef struct xl_invalidations | xl_invalidations |
Functions | |
void | standby_redo (XLogReaderState *record) |
void | standby_desc (StringInfo buf, XLogReaderState *record) |
const char * | standby_identify (uint8 info) |
void | standby_desc_invalidations (StringInfo buf, int nmsgs, SharedInvalidationMessage *msgs, Oid dbId, Oid tsId, bool relcacheInitFileInval) |
#define MinSizeOfInvalidations offsetof(xl_invalidations, msgs) |
Definition at line 72 of file standbydefs.h.
#define XLOG_INVALIDATIONS 0x20 |
Definition at line 36 of file standbydefs.h.
#define XLOG_RUNNING_XACTS 0x10 |
Definition at line 35 of file standbydefs.h.
#define XLOG_STANDBY_LOCK 0x00 |
Definition at line 34 of file standbydefs.h.
typedef struct xl_invalidations xl_invalidations |
typedef struct xl_running_xacts xl_running_xacts |
typedef struct xl_standby_locks xl_standby_locks |
void standby_desc | ( | StringInfo | buf, |
XLogReaderState * | record | ||
) |
Definition at line 47 of file standbydesc.c.
References appendStringInfo(), buf, xl_invalidations::dbId, xl_standby_lock::dbOid, i, xl_standby_locks::locks, xl_invalidations::msgs, xl_standby_locks::nlocks, xl_invalidations::nmsgs, xl_invalidations::relcacheInitFileInval, xl_standby_lock::relOid, standby_desc_invalidations(), standby_desc_running_xacts(), xl_invalidations::tsId, xl_standby_lock::xid, XLOG_INVALIDATIONS, XLOG_RUNNING_XACTS, XLOG_STANDBY_LOCK, XLogRecGetData, and XLogRecGetInfo.
void standby_desc_invalidations | ( | StringInfo | buf, |
int | nmsgs, | ||
SharedInvalidationMessage * | msgs, | ||
Oid | dbId, | ||
Oid | tsId, | ||
bool | relcacheInitFileInval | ||
) |
Definition at line 101 of file standbydesc.c.
References appendStringInfo(), appendStringInfoString(), buf, SharedInvalidationMessage::cat, SharedInvalCatalogMsg::catId, SharedInvalRelmapMsg::dbId, i, SharedInvalidationMessage::id, SharedInvalidationMessage::rc, SharedInvalRelcacheMsg::relId, SharedInvalSnapshotMsg::relId, SharedInvalidationMessage::rm, SHAREDINVALCATALOG_ID, SHAREDINVALRELCACHE_ID, SHAREDINVALRELMAP_ID, SHAREDINVALSMGR_ID, SHAREDINVALSNAPSHOT_ID, and SharedInvalidationMessage::sn.
Referenced by heap_desc(), standby_desc(), xact_desc(), xact_desc_commit(), and xact_desc_prepare().
const char * standby_identify | ( | uint8 | info | ) |
Definition at line 79 of file standbydesc.c.
References XLOG_INVALIDATIONS, XLOG_RUNNING_XACTS, XLOG_STANDBY_LOCK, and XLR_INFO_MASK.
void standby_redo | ( | XLogReaderState * | record | ) |
Definition at line 1162 of file standby.c.
References Assert, xl_invalidations::dbId, xl_standby_lock::dbOid, elog, i, RunningTransactionsData::latestCompletedXid, xl_running_xacts::latestCompletedXid, xl_standby_locks::locks, xl_invalidations::msgs, RunningTransactionsData::nextXid, xl_running_xacts::nextXid, xl_standby_locks::nlocks, xl_invalidations::nmsgs, RunningTransactionsData::oldestRunningXid, xl_running_xacts::oldestRunningXid, PANIC, pgstat_report_stat(), ProcArrayApplyRecoveryInfo(), ProcessCommittedInvalidationMessages(), xl_invalidations::relcacheInitFileInval, xl_standby_lock::relOid, STANDBY_DISABLED, StandbyAcquireAccessExclusiveLock(), standbyState, RunningTransactionsData::subxcnt, xl_running_xacts::subxcnt, xl_running_xacts::subxid_overflow, RunningTransactionsData::subxid_status, SUBXIDS_IN_ARRAY, SUBXIDS_MISSING, xl_invalidations::tsId, RunningTransactionsData::xcnt, xl_running_xacts::xcnt, xl_standby_lock::xid, RunningTransactionsData::xids, xl_running_xacts::xids, XLOG_INVALIDATIONS, XLOG_RUNNING_XACTS, XLOG_STANDBY_LOCK, XLogRecGetData, XLogRecGetInfo, and XLogRecHasAnyBlockRefs.