PostgreSQL Source Code
git master
|
Go to the source code of this file.
Data Structures | |
struct | ManyTestResourceKind |
struct | ManyTestResource |
Functions | |
static void | ReleaseManyTestResource (Datum res) |
static char * | PrintManyTest (Datum res) |
static void | InitManyTestResourceKind (ManyTestResourceKind *kind, char *name, ResourceReleasePhase phase, uint32 priority) |
static void | RememberManyTestResources (ResourceOwner owner, ManyTestResourceKind *kinds, int nkinds, int nresources) |
static void | ForgetManyTestResources (ResourceOwner owner, ManyTestResourceKind *kinds, int nkinds, int nresources) |
static int | GetTotalResourceCount (ManyTestResourceKind *kinds, int nkinds) |
PG_FUNCTION_INFO_V1 (test_resowner_many) | |
Datum | test_resowner_many (PG_FUNCTION_ARGS) |
Variables | |
static ResourceReleasePhase | current_release_phase |
static uint32 | last_release_priority = 0 |
|
static |
Definition at line 144 of file test_resowner_many.c.
References dlist_delete(), dlist_head_element, dlist_is_empty(), elog, ERROR, GetTotalResourceCount(), i, j, ManyTestResourceKind::nforgotten, ManyTestResource::node, PANIC, pfree(), PointerGetDatum(), and ResourceOwnerForget().
Referenced by test_resowner_many().
|
static |
Definition at line 184 of file test_resowner_many.c.
References i.
Referenced by ForgetManyTestResources(), and test_resowner_many().
|
static |
Definition at line 96 of file test_resowner_many.c.
References ManyTestResourceKind::current_resources, ResourceOwnerDesc::DebugPrint, ManyTestResourceKind::desc, dlist_init(), name, ResourceOwnerDesc::name, ManyTestResourceKind::nforgotten, ManyTestResourceKind::nleaked, ManyTestResourceKind::nreleased, ManyTestResourceKind::nremembered, PrintManyTest(), ResourceOwnerDesc::release_phase, ResourceOwnerDesc::release_priority, ReleaseManyTestResource(), and ResourceOwnerDesc::ReleaseResource.
Referenced by test_resowner_many().
PG_FUNCTION_INFO_V1 | ( | test_resowner_many | ) |
|
static |
Definition at line 82 of file test_resowner_many.c.
References DatumGetPointer(), ManyTestResourceKind::desc, ManyTestResource::kind, ResourceOwnerDesc::name, ManyTestResourceKind::nleaked, psprintf(), and res.
Referenced by InitManyTestResourceKind().
|
static |
Definition at line 67 of file test_resowner_many.c.
References Assert, DatumGetPointer(), DEBUG1, ManyTestResourceKind::desc, dlist_delete(), elog, ManyTestResource::kind, last_release_priority, ResourceOwnerDesc::name, ManyTestResource::node, ManyTestResourceKind::nreleased, pfree(), ResourceOwnerDesc::release_priority, and res.
Referenced by InitManyTestResourceKind().
|
static |
Definition at line 116 of file test_resowner_many.c.
References DEBUG1, ManyTestResourceKind::desc, dlist_node_init(), dlist_push_tail(), elog, i, ManyTestResource::kind, ResourceOwnerDesc::name, ManyTestResource::node, ManyTestResourceKind::nremembered, palloc(), PointerGetDatum(), ResourceOwnerEnlarge(), and ResourceOwnerRemember().
Referenced by test_resowner_many().
Datum test_resowner_many | ( | PG_FUNCTION_ARGS | ) |
Definition at line 203 of file test_resowner_many.c.
References Assert, current_release_phase, CurrentResourceOwner, elog, ERROR, ForgetManyTestResources(), GetTotalResourceCount(), i, InitManyTestResourceKind(), last_release_priority, NOTICE, palloc(), PG_GETARG_INT32, PG_RETURN_VOID, psprintf(), RELEASE_PRIO_FIRST, RememberManyTestResources(), RESOURCE_RELEASE_AFTER_LOCKS, RESOURCE_RELEASE_BEFORE_LOCKS, RESOURCE_RELEASE_LOCKS, ResourceOwnerCreate(), ResourceOwnerDelete(), and ResourceOwnerRelease().
|
static |
Definition at line 49 of file test_resowner_many.c.
Referenced by test_resowner_many().
|
static |
Definition at line 50 of file test_resowner_many.c.
Referenced by ReleaseManyTestResource(), and test_resowner_many().