mirror of
https://github.com/postgres/postgres.git
synced 2025-09-03 15:22:11 +03:00
Split resowner.h
This lets files that are mere users of ResourceOwner not automatically include the headers for stuff that is managed by the resowner mechanism.
This commit is contained in:
@@ -48,6 +48,7 @@
|
||||
|
||||
#include "datatype/timestamp.h"
|
||||
#include "executor/execdesc.h"
|
||||
#include "utils/plancache.h"
|
||||
#include "utils/resowner.h"
|
||||
|
||||
/*
|
||||
|
@@ -19,12 +19,6 @@
|
||||
#ifndef RESOWNER_H
|
||||
#define RESOWNER_H
|
||||
|
||||
#include "storage/fd.h"
|
||||
#include "storage/lock.h"
|
||||
#include "utils/catcache.h"
|
||||
#include "utils/plancache.h"
|
||||
#include "utils/snapshot.h"
|
||||
|
||||
|
||||
/*
|
||||
* ResourceOwner objects are an opaque data structure known only within
|
||||
@@ -85,60 +79,4 @@ extern void RegisterResourceReleaseCallback(ResourceReleaseCallback callback,
|
||||
extern void UnregisterResourceReleaseCallback(ResourceReleaseCallback callback,
|
||||
void *arg);
|
||||
|
||||
/* support for buffer refcount management */
|
||||
extern void ResourceOwnerEnlargeBuffers(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberBuffer(ResourceOwner owner, Buffer buffer);
|
||||
extern void ResourceOwnerForgetBuffer(ResourceOwner owner, Buffer buffer);
|
||||
|
||||
/* support for local lock management */
|
||||
extern void ResourceOwnerRememberLock(ResourceOwner owner, LOCALLOCK *locallock);
|
||||
extern void ResourceOwnerForgetLock(ResourceOwner owner, LOCALLOCK *locallock);
|
||||
|
||||
/* support for catcache refcount management */
|
||||
extern void ResourceOwnerEnlargeCatCacheRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberCatCacheRef(ResourceOwner owner,
|
||||
HeapTuple tuple);
|
||||
extern void ResourceOwnerForgetCatCacheRef(ResourceOwner owner,
|
||||
HeapTuple tuple);
|
||||
extern void ResourceOwnerEnlargeCatCacheListRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberCatCacheListRef(ResourceOwner owner,
|
||||
CatCList *list);
|
||||
extern void ResourceOwnerForgetCatCacheListRef(ResourceOwner owner,
|
||||
CatCList *list);
|
||||
|
||||
/* support for relcache refcount management */
|
||||
extern void ResourceOwnerEnlargeRelationRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberRelationRef(ResourceOwner owner,
|
||||
Relation rel);
|
||||
extern void ResourceOwnerForgetRelationRef(ResourceOwner owner,
|
||||
Relation rel);
|
||||
|
||||
/* support for plancache refcount management */
|
||||
extern void ResourceOwnerEnlargePlanCacheRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberPlanCacheRef(ResourceOwner owner,
|
||||
CachedPlan *plan);
|
||||
extern void ResourceOwnerForgetPlanCacheRef(ResourceOwner owner,
|
||||
CachedPlan *plan);
|
||||
|
||||
/* support for tupledesc refcount management */
|
||||
extern void ResourceOwnerEnlargeTupleDescs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberTupleDesc(ResourceOwner owner,
|
||||
TupleDesc tupdesc);
|
||||
extern void ResourceOwnerForgetTupleDesc(ResourceOwner owner,
|
||||
TupleDesc tupdesc);
|
||||
|
||||
/* support for snapshot refcount management */
|
||||
extern void ResourceOwnerEnlargeSnapshots(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberSnapshot(ResourceOwner owner,
|
||||
Snapshot snapshot);
|
||||
extern void ResourceOwnerForgetSnapshot(ResourceOwner owner,
|
||||
Snapshot snapshot);
|
||||
|
||||
/* support for temporary file management */
|
||||
extern void ResourceOwnerEnlargeFiles(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberFile(ResourceOwner owner,
|
||||
File file);
|
||||
extern void ResourceOwnerForgetFile(ResourceOwner owner,
|
||||
File file);
|
||||
|
||||
#endif /* RESOWNER_H */
|
||||
|
83
src/include/utils/resowner_private.h
Normal file
83
src/include/utils/resowner_private.h
Normal file
@@ -0,0 +1,83 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
*
|
||||
* resowner_private.h
|
||||
* POSTGRES resource owner private definitions.
|
||||
*
|
||||
* See utils/resowner/README for more info.
|
||||
*
|
||||
*
|
||||
* Portions Copyright (c) 1996-2012, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* src/include/utils/resowner_private.h
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#ifndef RESOWNER_PRIVATE_H
|
||||
#define RESOWNER_PRIVATE_H
|
||||
|
||||
#include "storage/fd.h"
|
||||
#include "storage/lock.h"
|
||||
#include "utils/catcache.h"
|
||||
#include "utils/plancache.h"
|
||||
#include "utils/resowner.h"
|
||||
#include "utils/snapshot.h"
|
||||
|
||||
|
||||
/* support for buffer refcount management */
|
||||
extern void ResourceOwnerEnlargeBuffers(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberBuffer(ResourceOwner owner, Buffer buffer);
|
||||
extern void ResourceOwnerForgetBuffer(ResourceOwner owner, Buffer buffer);
|
||||
|
||||
/* support for local lock management */
|
||||
extern void ResourceOwnerRememberLock(ResourceOwner owner, LOCALLOCK *locallock);
|
||||
extern void ResourceOwnerForgetLock(ResourceOwner owner, LOCALLOCK *locallock);
|
||||
|
||||
/* support for catcache refcount management */
|
||||
extern void ResourceOwnerEnlargeCatCacheRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberCatCacheRef(ResourceOwner owner,
|
||||
HeapTuple tuple);
|
||||
extern void ResourceOwnerForgetCatCacheRef(ResourceOwner owner,
|
||||
HeapTuple tuple);
|
||||
extern void ResourceOwnerEnlargeCatCacheListRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberCatCacheListRef(ResourceOwner owner,
|
||||
CatCList *list);
|
||||
extern void ResourceOwnerForgetCatCacheListRef(ResourceOwner owner,
|
||||
CatCList *list);
|
||||
|
||||
/* support for relcache refcount management */
|
||||
extern void ResourceOwnerEnlargeRelationRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberRelationRef(ResourceOwner owner,
|
||||
Relation rel);
|
||||
extern void ResourceOwnerForgetRelationRef(ResourceOwner owner,
|
||||
Relation rel);
|
||||
|
||||
/* support for plancache refcount management */
|
||||
extern void ResourceOwnerEnlargePlanCacheRefs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberPlanCacheRef(ResourceOwner owner,
|
||||
CachedPlan *plan);
|
||||
extern void ResourceOwnerForgetPlanCacheRef(ResourceOwner owner,
|
||||
CachedPlan *plan);
|
||||
|
||||
/* support for tupledesc refcount management */
|
||||
extern void ResourceOwnerEnlargeTupleDescs(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberTupleDesc(ResourceOwner owner,
|
||||
TupleDesc tupdesc);
|
||||
extern void ResourceOwnerForgetTupleDesc(ResourceOwner owner,
|
||||
TupleDesc tupdesc);
|
||||
|
||||
/* support for snapshot refcount management */
|
||||
extern void ResourceOwnerEnlargeSnapshots(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberSnapshot(ResourceOwner owner,
|
||||
Snapshot snapshot);
|
||||
extern void ResourceOwnerForgetSnapshot(ResourceOwner owner,
|
||||
Snapshot snapshot);
|
||||
|
||||
/* support for temporary file management */
|
||||
extern void ResourceOwnerEnlargeFiles(ResourceOwner owner);
|
||||
extern void ResourceOwnerRememberFile(ResourceOwner owner,
|
||||
File file);
|
||||
extern void ResourceOwnerForgetFile(ResourceOwner owner,
|
||||
File file);
|
||||
|
||||
#endif /* RESOWNER_PRIVATE_H */
|
@@ -13,7 +13,9 @@
|
||||
#ifndef SNAPMGR_H
|
||||
#define SNAPMGR_H
|
||||
|
||||
#include "fmgr.h"
|
||||
#include "utils/resowner.h"
|
||||
#include "utils/snapshot.h"
|
||||
|
||||
|
||||
extern bool FirstSnapshotSet;
|
||||
|
Reference in New Issue
Block a user