PostgreSQL Source Code
git master
|
Go to the source code of this file.
Data Structures | |
struct | xl_relmap_update |
Macros | |
#define | XLOG_RELMAP_UPDATE 0x00 |
#define | MinSizeOfRelmapUpdate offsetof(xl_relmap_update, data) |
Typedefs | |
typedef struct xl_relmap_update | xl_relmap_update |
#define MinSizeOfRelmapUpdate offsetof(xl_relmap_update, data) |
Definition at line 35 of file relmapper.h.
#define XLOG_RELMAP_UPDATE 0x00 |
Definition at line 25 of file relmapper.h.
typedef struct xl_relmap_update xl_relmap_update |
void AtCCI_RelationMap | ( | void | ) |
Definition at line 504 of file relmapper.c.
References active_local_updates, active_shared_updates, merge_map_updates(), RelMapFile::num_mappings, pending_local_updates, and pending_shared_updates.
Referenced by AtCCI_LocalCache().
void AtEOXact_RelationMap | ( | bool | isCommit, |
bool | isParallelWorker | ||
) |
Definition at line 541 of file relmapper.c.
References active_local_updates, active_shared_updates, Assert, RelMapFile::num_mappings, pending_local_updates, pending_shared_updates, and perform_relmap_update().
Referenced by AbortTransaction(), and CommitTransaction().
void AtPrepare_RelationMap | ( | void | ) |
Definition at line 588 of file relmapper.c.
References active_local_updates, active_shared_updates, ereport, errcode(), errmsg(), ERROR, RelMapFile::num_mappings, pending_local_updates, and pending_shared_updates.
Referenced by PrepareTransaction().
void CheckPointRelationMap | ( | void | ) |
Definition at line 611 of file relmapper.c.
References LW_SHARED, LWLockAcquire(), and LWLockRelease().
Referenced by CheckPointGuts().
Size EstimateRelationMapSpace | ( | void | ) |
Definition at line 713 of file relmapper.c.
Referenced by InitializeParallelDSM(), and SerializeRelationMap().
Definition at line 292 of file relmapper.c.
References ERROR, LW_EXCLUSIVE, LWLockAcquire(), LWLockRelease(), read_relmap_file(), and write_relmap_file().
Referenced by CreateDatabaseUsingWalLog().
Oid RelationMapFilenumberToOid | ( | RelFileNumber | filenumber, |
bool | shared | ||
) |
Definition at line 218 of file relmapper.c.
References active_local_updates, active_shared_updates, i, InvalidOid, local_map, RelMapping::mapfilenumber, RelMapping::mapoid, RelMapFile::mappings, RelMapFile::num_mappings, and shared_map.
Referenced by RelidByRelfilenumber().
void RelationMapFinishBootstrap | ( | void | ) |
Definition at line 625 of file relmapper.c.
References active_local_updates, active_shared_updates, Assert, DatabasePath, InvalidOid, IsBootstrapProcessingMode, local_map, LW_EXCLUSIVE, LWLockAcquire(), LWLockRelease(), MyDatabaseId, MyDatabaseTableSpace, RelMapFile::num_mappings, pending_local_updates, pending_shared_updates, shared_map, and write_relmap_file().
Referenced by BootstrapModeMain().
void RelationMapInitialize | ( | void | ) |
Definition at line 651 of file relmapper.c.
References active_local_updates, active_shared_updates, local_map, RelMapFile::magic, RelMapFile::num_mappings, pending_local_updates, pending_shared_updates, and shared_map.
Referenced by RelationCacheInitialize().
void RelationMapInitializePhase2 | ( | void | ) |
Definition at line 671 of file relmapper.c.
References IsBootstrapProcessingMode, and load_relmap_file().
Referenced by RelationCacheInitializePhase2().
void RelationMapInitializePhase3 | ( | void | ) |
Definition at line 692 of file relmapper.c.
References IsBootstrapProcessingMode, and load_relmap_file().
Referenced by RelationCacheInitializePhase3().
void RelationMapInvalidate | ( | bool | shared | ) |
Definition at line 468 of file relmapper.c.
References load_relmap_file(), local_map, RelMapFile::magic, RELMAPPER_FILEMAGIC, and shared_map.
Referenced by LocalExecuteInvalidationMessage().
void RelationMapInvalidateAll | ( | void | ) |
Definition at line 490 of file relmapper.c.
References load_relmap_file(), local_map, RelMapFile::magic, RELMAPPER_FILEMAGIC, and shared_map.
Referenced by RelationCacheInvalidate().
RelFileNumber RelationMapOidToFilenumber | ( | Oid | relationId, |
bool | shared | ||
) |
Definition at line 165 of file relmapper.c.
References active_local_updates, active_shared_updates, i, InvalidRelFileNumber, local_map, RelMapping::mapfilenumber, RelMapping::mapoid, RelMapFile::mappings, RelMapFile::num_mappings, and shared_map.
Referenced by pg_relation_filenode(), pg_relation_filepath(), RelationInitPhysicalAddr(), and swap_relation_files().
RelFileNumber RelationMapOidToFilenumberForDatabase | ( | char * | dbpath, |
Oid | relationId | ||
) |
Definition at line 265 of file relmapper.c.
References ERROR, i, InvalidRelFileNumber, RelMapping::mapfilenumber, RelMapping::mapoid, RelMapFile::mappings, RelMapFile::num_mappings, and read_relmap_file().
Referenced by ScanSourceDatabasePgClass(), and ScanSourceDatabasePgClassTuple().
void RelationMapRemoveMapping | ( | Oid | relationId | ) |
Definition at line 438 of file relmapper.c.
References active_local_updates, elog, ERROR, i, RelMapping::mapoid, RelMapFile::mappings, and RelMapFile::num_mappings.
Referenced by finish_heap_swap().
void RelationMapUpdateMap | ( | Oid | relationId, |
RelFileNumber | fileNumber, | ||
bool | shared, | ||
bool | immediate | ||
) |
Definition at line 325 of file relmapper.c.
References active_local_updates, active_shared_updates, apply_map_update(), elog, ERROR, GetCurrentTransactionNestLevel(), IsBootstrapProcessingMode, IsInParallelMode(), local_map, pending_local_updates, pending_shared_updates, and shared_map.
Referenced by formrdesc(), RelationBuildLocalRelation(), RelationSetNewRelfilenumber(), and swap_relation_files().
void relmap_desc | ( | StringInfo | buf, |
XLogReaderState * | record | ||
) |
Definition at line 20 of file relmapdesc.c.
References appendStringInfo(), buf, xl_relmap_update::dbid, xl_relmap_update::nbytes, xl_relmap_update::tsid, XLOG_RELMAP_UPDATE, XLogRecGetData, XLogRecGetInfo, and XLR_INFO_MASK.
const char* relmap_identify | ( | uint8 | info | ) |
void relmap_redo | ( | XLogReaderState * | record | ) |
Definition at line 1096 of file relmapper.c.
References Assert, xl_relmap_update::data, xl_relmap_update::dbid, elog, GetDatabasePath(), LW_EXCLUSIVE, LWLockAcquire(), LWLockRelease(), xl_relmap_update::nbytes, PANIC, pfree(), xl_relmap_update::tsid, write_relmap_file(), XLOG_RELMAP_UPDATE, XLogRecGetData, XLogRecGetInfo, XLogRecHasAnyBlockRefs, and XLR_INFO_MASK.
void RestoreRelationMap | ( | char * | startAddress | ) |
Definition at line 741 of file relmapper.c.
References SerializedActiveRelMaps::active_local_updates, active_local_updates, SerializedActiveRelMaps::active_shared_updates, active_shared_updates, elog, ERROR, RelMapFile::num_mappings, pending_local_updates, and pending_shared_updates.
Referenced by ParallelWorkerMain().
void SerializeRelationMap | ( | Size | maxSize, |
char * | startAddress | ||
) |
Definition at line 724 of file relmapper.c.
References SerializedActiveRelMaps::active_local_updates, active_local_updates, SerializedActiveRelMaps::active_shared_updates, active_shared_updates, Assert, and EstimateRelationMapSpace().
Referenced by InitializeParallelDSM().