|
PostgreSQL Source Code git master
|
#include "utils/hsearch.h"

Go to the source code of this file.
Data Structures | |
| struct | ShmemStructOpts |
| struct | ShmemHashOpts |
| struct | ShmemCallbacks |
Macros | |
| #define | SHMEM_ATTACH_UNKNOWN_SIZE (-1) |
| #define | SHMEM_CALLBACKS_ALLOW_AFTER_STARTUP 0x00000001 |
| #define | ShmemRequestStruct(...) ShmemRequestStructWithOpts(&(ShmemStructOpts){__VA_ARGS__}) |
| #define | ShmemRequestHash(...) ShmemRequestHashWithOpts(&(ShmemHashOpts){__VA_ARGS__}) |
Typedefs | |
| typedef struct ShmemStructOpts | ShmemStructOpts |
| typedef struct ShmemHashOpts | ShmemHashOpts |
| typedef void(* | ShmemRequestCallback) (void *opaque_arg) |
| typedef void(* | ShmemInitCallback) (void *opaque_arg) |
| typedef void(* | ShmemAttachCallback) (void *opaque_arg) |
| typedef struct ShmemCallbacks | ShmemCallbacks |
Functions | |
| void | RegisterShmemCallbacks (const ShmemCallbacks *callbacks) |
| bool | ShmemAddrIsValid (const void *addr) |
| void | ShmemRequestStructWithOpts (const ShmemStructOpts *options) |
| void | ShmemRequestHashWithOpts (const ShmemHashOpts *options) |
| void * | ShmemInitStruct (const char *name, Size size, bool *foundPtr) |
| HTAB * | ShmemInitHash (const char *name, int64 nelems, HASHCTL *infoP, int hash_flags) |
| void * | ShmemAlloc (Size size) |
| void * | ShmemAllocNoError (Size size) |
| PGDLLIMPORT Size | pg_get_shmem_pagesize (void) |
| void | RequestAddinShmemSpace (Size size) |
| #define ShmemRequestHash | ( | ... | ) | ShmemRequestHashWithOpts(&(ShmemHashOpts){__VA_ARGS__}) |
Definition at line 179 of file shmem.h.
| #define ShmemRequestStruct | ( | ... | ) | ShmemRequestStructWithOpts(&(ShmemStructOpts){__VA_ARGS__}) |
Definition at line 176 of file shmem.h.
| typedef struct ShmemCallbacks ShmemCallbacks |
| typedef struct ShmemHashOpts ShmemHashOpts |
|
extern |
|
extern |
Definition at line 873 of file shmem.c.
References CallShmemCallbacksAfterStartup(), elog, ERROR, ShmemCallbacks::flags, IsUnderPostmaster, lappend(), registered_shmem_callbacks, SHMEM_CALLBACKS_ALLOW_AFTER_STARTUP, and SRS_DONE.
Referenced by _PG_init().
Definition at line 45 of file ipci.c.
References add_size(), elog, FATAL, process_shmem_requests_in_progress, and total_addin_request.
Definition at line 849 of file shmem.c.
References ShmemBase, and ShmemEnd.
Referenced by ReleasePredXact().
Definition at line 763 of file shmem.c.
References ereport, errcode(), errmsg, ERROR, fb(), and ShmemAllocRaw().
Referenced by InitShmemAllocator().
Definition at line 783 of file shmem.c.
References ShmemAllocRaw().
Definition at line 117 of file shmem_hash.c.
References fb(), hash_estimate_size(), name, shmem_hash_create(), and ShmemInitStruct().
Definition at line 1010 of file shmem.c.
References Assert, AttachShmemIndexEntry(), fb(), InitShmemIndexEntry(), IsUnderPostmaster, LW_EXCLUSIVE, LWLockAcquire(), LWLockRelease(), name, SHMEM_KIND_STRUCT, ShmemIndexLock, SRS_DONE, SRS_INITIALIZING, and SRS_REQUESTING.
Referenced by ShmemInitHash().
|
extern |
Definition at line 44 of file shmem_hash.c.
References Assert, fb(), hash_estimate_size(), memcpy(), MemoryContextAlloc(), SHMEM_KIND_HASH, ShmemRequestInternal(), and TopMemoryContext.
|
extern |
Definition at line 315 of file shmem.c.
References fb(), memcpy(), MemoryContextAlloc(), SHMEM_KIND_STRUCT, ShmemRequestInternal(), and TopMemoryContext.