Viewing file: relmapper.h (1.8 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*------------------------------------------------------------------------- * * relmapper.h * Catalog-to-filenode mapping * * * Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * src/include/utils/relmapper.h * *------------------------------------------------------------------------- */ #ifndef RELMAPPER_H #define RELMAPPER_H
#include "access/xlogreader.h" #include "lib/stringinfo.h"
/* ---------------- * relmap-related XLOG entries * ---------------- */
#define XLOG_RELMAP_UPDATE 0x00
typedef struct xl_relmap_update { Oid dbid; /* database ID, or 0 for shared map */ Oid tsid; /* database's tablespace, or pg_global */ int32 nbytes; /* size of relmap data */ char data[FLEXIBLE_ARRAY_MEMBER]; } xl_relmap_update;
#define MinSizeOfRelmapUpdate offsetof(xl_relmap_update, data)
extern Oid RelationMapOidToFilenode(Oid relationId, bool shared);
extern Oid RelationMapFilenodeToOid(Oid relationId, bool shared);
extern void RelationMapUpdateMap(Oid relationId, Oid fileNode, bool shared, bool immediate);
extern void RelationMapRemoveMapping(Oid relationId);
extern void RelationMapInvalidate(bool shared); extern void RelationMapInvalidateAll(void);
extern void AtCCI_RelationMap(void); extern void AtEOXact_RelationMap(bool isCommit); extern void AtPrepare_RelationMap(void);
extern void CheckPointRelationMap(void);
extern void RelationMapFinishBootstrap(void);
extern void RelationMapInitialize(void); extern void RelationMapInitializePhase2(void); extern void RelationMapInitializePhase3(void);
extern void relmap_redo(XLogReaderState *record); extern void relmap_desc(StringInfo buf, XLogReaderState *record); extern const char *relmap_identify(uint8 info);
#endif /* RELMAPPER_H */
|