|
PostgreSQL Source Code git master
|
#include "access/htup.h"#include "catalog/syscache_ids.h"#include "storage/relfilelocator.h"#include "utils/relcache.h"

Go to the source code of this file.
Macros | |
| #define | MIN_DEBUG_DISCARD_CACHES 0 |
| #define | DEFAULT_DEBUG_DISCARD_CACHES 0 |
| #define | MAX_DEBUG_DISCARD_CACHES 0 |
Typedefs | |
| typedef void(* | SyscacheCallbackFunction) (Datum arg, SysCacheIdentifier cacheid, uint32 hashvalue) |
| typedef void(* | RelcacheCallbackFunction) (Datum arg, Oid relid) |
| typedef void(* | RelSyncCallbackFunction) (Datum arg, Oid relid) |
Variables | |
| PGDLLIMPORT int | debug_discard_caches |
Definition at line 930 of file inval.c.
References AssertCouldGetRelation(), debug_discard_caches, InvalidateSystemCaches(), InvalidateSystemCachesExtended(), IsTransactionState(), LocalExecuteInvalidationMessage(), ReceiveSharedInvalidMessages(), and recursion_depth.
Referenced by apply_handle_commit_internal(), AtStart_Cache(), ConditionalLockDatabaseObject(), ConditionalLockRelation(), ConditionalLockRelationOid(), ConditionalLockSharedObject(), delay_execution_planner(), heap_inplace_update_and_unlock(), InitializeSessionUserId(), LockDatabaseObject(), LockRelation(), LockRelationId(), LockRelationOid(), LockSharedObject(), LogicalRepApplyLoop(), pgstat_init_function_usage(), ProcessCatchupInterrupt(), RangeVarGetRelidExtended(), relation_openrv(), relation_openrv_extended(), RelationBuildPartitionDesc(), RemoveRelations(), SearchSysCacheLocked1(), and write_relcache_init_file().
Definition at line 1307 of file inval.c.
References AppendInvalidationMessages(), Assert, CommandEndInvalidationMessages(), fb(), GetCurrentTransactionNestLevel(), inplaceInvalInfo, LocalExecuteInvalidationMessage(), TransInvalidationInfo::parent, pfree(), ProcessInvalidationMessages(), SetGroupToFollow, and transInvalInfo.
Referenced by AbortSubTransaction(), and CommitSubTransaction().
Definition at line 1196 of file inval.c.
References AppendInvalidationMessages(), Assert, InvalidationInfo::CurrentCmdInvalidMsgs, fb(), TransInvalidationInfo::ii, INJECTION_POINT, inplaceInvalInfo, LocalExecuteInvalidationMessage(), TransInvalidationInfo::my_level, TransInvalidationInfo::parent, TransInvalidationInfo::PriorCmdInvalidMsgs, ProcessInvalidationMessages(), ProcessInvalidationMessagesMulti(), RelationCacheInitFilePostInvalidate(), RelationCacheInitFilePreInvalidate(), InvalidationInfo::RelcacheInitFileInval, SendSharedInvalidMessages(), and transInvalInfo.
Referenced by AbortTransaction(), CommitTransaction(), and PostPrepare_Inval().
Definition at line 1260 of file inval.c.
References Assert, CritSectionCount, InvalidationInfo::CurrentCmdInvalidMsgs, fb(), inplaceInvalInfo, ProcessInvalidationMessagesMulti(), RelationCacheInitFilePostInvalidate(), InvalidationInfo::RelcacheInitFileInval, and SendSharedInvalidMessages().
Referenced by heap_inplace_update_and_unlock().
Definition at line 1609 of file inval.c.
References InvalidOid, IsSharedRelation(), MyDatabaseId, PrepareInvalidationState(), and RegisterCatalogInvalidation().
Referenced by finish_heap_swap().
Definition at line 1568 of file inval.c.
References CacheInvalidateHeapTupleCommon(), and PrepareInvalidationState().
Referenced by AlterDomainAddConstraint(), AlterDomainDropConstraint(), heap_delete(), heap_inplace_update_and_unlock(), heap_insert(), heap_multi_insert(), and heap_update().
Definition at line 1590 of file inval.c.
References CacheInvalidateHeapTupleCommon(), fb(), and PrepareInplaceInvalidationState().
Referenced by heap_inplace_lock().
Definition at line 1632 of file inval.c.
References fb(), InvalidOid, MyDatabaseId, PrepareInvalidationState(), RelationData::rd_rel, RegisterRelcacheInvalidation(), and RelationGetRelid.
Referenced by AlterPolicy(), ATExecDetachPartition(), ATExecGenericOptions(), CreatePolicy(), CreateStatistics(), DetachPartitionFinalize(), EnableDisableRule(), EnableDisableTrigger(), index_concurrently_set_dead(), index_constraint_create(), index_create(), index_drop(), QueueCheckConstraintValidation(), QueueNNConstraintValidation(), reindex_index(), relation_mark_replica_identity(), RelationSetNewRelfilenumber(), RemovePolicyById(), RemoveRewriteRuleById(), RemoveTriggerById(), rename_constraint_internal(), rename_policy(), RenameRewriteRule(), renametrig_internal(), set_attnotnull(), SetRelationNumChecks(), StorePartitionBound(), and StorePartitionKey().
Definition at line 1655 of file inval.c.
References InvalidOid, PrepareInvalidationState(), and RegisterRelcacheInvalidation().
Referenced by AlterPublicationAllFlags(), AlterPublicationOptions(), CreatePublication(), InvalidatePublicationRels(), and RemovePublicationById().
Definition at line 1688 of file inval.c.
References CacheInvalidateRelcacheByTuple(), elog, ERROR, fb(), HeapTupleIsValid, ObjectIdGetDatum(), ReleaseSysCache(), and SearchSysCache1().
Referenced by AlterConstrUpdateConstraintEntry(), AlterPropGraph(), ATExecAlterConstraintInternal(), ATExecAttachPartition(), DefineIndex(), DetachPartitionFinalize(), heap_drop_with_catalog(), InvalidatePublicationRels(), ReindexRelationConcurrently(), RemoveStatisticsById(), and StorePartitionBound().
Definition at line 1666 of file inval.c.
References fb(), GETSTRUCT(), InvalidOid, MyDatabaseId, PrepareInvalidationState(), and RegisterRelcacheInvalidation().
Referenced by CacheInvalidateRelcacheByRelid(), copy_table_data(), CreateTriggerFiringOn(), index_update_stats(), RemoveRoleFromObjectPolicy(), SetRelationHasSubclass(), SetRelationRuleStatus(), and swap_relation_files().
Definition at line 1786 of file inval.c.
References SharedInvalRelmapMsg::dbId, SharedInvalRelmapMsg::id, SharedInvalidationMessage::rm, SendSharedInvalidMessages(), SHAREDINVALRELMAP_ID, and VALGRIND_MAKE_MEM_DEFINED.
Referenced by write_relmap_file().
Definition at line 1709 of file inval.c.
References MyDatabaseId, PrepareInvalidationState(), and RegisterRelsyncInvalidation().
Referenced by CacheInvalidateRelSyncAll(), and InvalidatePubRelSyncCache().
Definition at line 1721 of file inval.c.
References CacheInvalidateRelSync(), and InvalidOid.
Referenced by InvalidatePubRelSyncCache().
|
extern |
Definition at line 1752 of file inval.c.
References RelFileLocatorBackend::backend, SharedInvalSmgrMsg::backend_hi, SharedInvalSmgrMsg::backend_lo, SharedInvalSmgrMsg::id, RelFileLocatorBackend::locator, MAX_BACKENDS_BITS, SharedInvalSmgrMsg::rlocator, SendSharedInvalidMessages(), SHAREDINVALSMGR_ID, SharedInvalidationMessage::sm, StaticAssertDecl, and VALGRIND_MAKE_MEM_DEFINED.
Referenced by smgrdounlinkall(), smgrtruncate(), and vm_extend().
|
extern |
Definition at line 1855 of file inval.c.
References RELCACHECALLBACK::arg, arg, elog, FATAL, RELCACHECALLBACK::function, MAX_RELCACHE_CALLBACKS, relcache_callback_count, and relcache_callback_list.
Referenced by init_rel_sync_cache(), InitializeRelfilenumberMap(), InitPlanCache(), logicalrep_partmap_init(), logicalrep_relmap_init(), and lookup_type_cache().
|
extern |
Definition at line 1876 of file inval.c.
References RELSYNCCALLBACK::arg, arg, elog, FATAL, RELSYNCCALLBACK::function, MAX_RELSYNC_CALLBACKS, relsync_callback_count, and relsync_callback_list.
Referenced by pgoutput_startup().
|
extern |
Definition at line 1813 of file inval.c.
References SYSCACHECALLBACK::arg, arg, elog, FATAL, fb(), SYSCACHECALLBACK::function, i, SYSCACHECALLBACK::id, SYSCACHECALLBACK::link, MAX_SYSCACHE_CALLBACKS, syscache_callback_count, syscache_callback_links, and syscache_callback_list.
Referenced by BuildEventTriggerCache(), find_oper_cache_entry(), get_function_sibling_type(), GetConnection(), init_rel_sync_cache(), init_ts_config_cache(), initialize_acl(), InitializeAttoptCache(), InitializeLogRepWorker(), InitializeSearchPath(), InitializeShippableCache(), InitializeTableSpaceCache(), InitPlanCache(), lookup_proof_cache(), lookup_ts_dictionary_cache(), lookup_ts_parser_cache(), lookup_type_cache(), ParallelApplyWorkerMain(), pgoutput_startup(), ri_InitHashTables(), SetupApplyOrSyncWorker(), and superuser_arg().
Definition at line 1917 of file inval.c.
References fb(), RELSYNCCALLBACK::function, i, relsync_callback_count, and relsync_callback_list.
Referenced by LocalExecuteInvalidationMessage().
|
extern |
Definition at line 1895 of file inval.c.
References Assert, elog, ERROR, fb(), i, syscache_callback_links, and syscache_callback_list.
Referenced by CatalogCacheFlushCatalog(), and LocalExecuteInvalidationMessage().
Definition at line 1406 of file inval.c.
References AppendInvalidationMessages(), InvalidationInfo::CurrentCmdInvalidMsgs, fb(), TransInvalidationInfo::ii, LocalExecuteInvalidationMessage(), LogLogicalInvalidations(), TransInvalidationInfo::PriorCmdInvalidMsgs, ProcessInvalidationMessages(), transInvalInfo, and XLogLogicalInfoActive.
Referenced by AtCCI_LocalCache(), and AtEOSubXact_Inval().
Definition at line 1283 of file inval.c.
References fb(), and inplaceInvalInfo.
Referenced by heap_inplace_lock(), and heap_inplace_unlock().
Definition at line 916 of file inval.c.
References InvalidateSystemCachesExtended().
Referenced by AcceptInvalidationMessages(), LogicalReplicationSlotCheckPendingWal(), LogicalSlotAdvanceAndCheckSnapState(), ParallelWorkerMain(), pg_logical_slot_get_changes_guts(), and ReorderBufferProcessTXN().
Definition at line 785 of file inval.c.
References fb(), SYSCACHECALLBACK::function, RELCACHECALLBACK::function, RELSYNCCALLBACK::function, i, InvalidateCatalogSnapshot(), InvalidOid, RelationCacheInvalidate(), relcache_callback_count, relcache_callback_list, relsync_callback_count, relsync_callback_list, ResetCatalogCachesExt(), syscache_callback_count, and syscache_callback_list.
Referenced by AcceptInvalidationMessages(), and InvalidateSystemCaches().
Definition at line 1936 of file inval.c.
References CatCacheMsgs, InvalidationInfo::CurrentCmdInvalidMsgs, fb(), TransInvalidationInfo::ii, MinSizeOfXactInvals, NumMessagesInGroup, ProcessMessageSubGroupMulti, RelCacheMsgs, transInvalInfo, XLOG_XACT_INVALIDATIONS, XLogBeginInsert(), XLogInsert(), and XLogRegisterData().
Referenced by CommandEndInvalidationMessages(), and RecordTransactionCommit().
Definition at line 993 of file inval.c.
References AtEOXact_Inval().
Referenced by PrepareTransaction().
Definition at line 1247 of file inval.c.
References Assert, CritSectionCount, inplaceInvalInfo, RelationCacheInitFilePreInvalidate(), and InvalidationInfo::RelcacheInitFileInval.
Referenced by heap_inplace_update_and_unlock().
|
extern |
Definition at line 260 of file inval.c.
Referenced by AcceptInvalidationMessages(), LookupOpclassInfo(), and RelationBuildDesc().