Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
relmapper.h74 linesDownload Raw Back to utils
1/*-------------------------------------------------------------------------2 *3 * relmapper.h4 *	  Catalog-to-filenumber mapping5 *6 *7 * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group8 * Portions Copyright (c) 1994, Regents of the University of California9 *10 * src/include/utils/relmapper.h11 *12 *-------------------------------------------------------------------------13 */14#ifndef RELMAPPER_H15#define RELMAPPER_H16 17#include "access/xlogreader.h"18#include "lib/stringinfo.h"19 20/* ----------------21 *		relmap-related XLOG entries22 * ----------------23 */24 25#define XLOG_RELMAP_UPDATE		0x0026 27typedef struct xl_relmap_update28{29	Oid			dbid;			/* database ID, or 0 for shared map */30	Oid			tsid;			/* database's tablespace, or pg_global */31	int32		nbytes;			/* size of relmap data */32	char		data[FLEXIBLE_ARRAY_MEMBER];33} xl_relmap_update;34 35#define MinSizeOfRelmapUpdate offsetof(xl_relmap_update, data)36 37 38extern RelFileNumber RelationMapOidToFilenumber(Oid relationId, bool shared);39 40extern Oid	RelationMapFilenumberToOid(RelFileNumber filenumber, bool shared);41extern RelFileNumber RelationMapOidToFilenumberForDatabase(char *dbpath,42														   Oid relationId);43extern void RelationMapCopy(Oid dbid, Oid tsid, char *srcdbpath,44							char *dstdbpath);45extern void RelationMapUpdateMap(Oid relationId, RelFileNumber fileNumber,46								 bool shared, bool immediate);47 48extern void RelationMapRemoveMapping(Oid relationId);49 50extern void RelationMapInvalidate(bool shared);51extern void RelationMapInvalidateAll(void);52 53extern void AtCCI_RelationMap(void);54extern void AtEOXact_RelationMap(bool isCommit, bool isParallelWorker);55extern void AtPrepare_RelationMap(void);56 57extern void CheckPointRelationMap(void);58 59extern void RelationMapFinishBootstrap(void);60 61extern void RelationMapInitialize(void);62extern void RelationMapInitializePhase2(void);63extern void RelationMapInitializePhase3(void);64 65extern Size EstimateRelationMapSpace(void);66extern void SerializeRelationMap(Size maxSize, char *startAddress);67extern void RestoreRelationMap(char *startAddress);68 69extern void relmap_redo(XLogReaderState *record);70extern void relmap_desc(StringInfo buf, XLogReaderState *record);71extern const char *relmap_identify(uint8 info);72 73#endif							/* RELMAPPER_H */74 
codekingpro/portable-devtools · Team Ai