Definition at line 47 of file worker.c.
48{
56
57
58
59
60
61
62
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
84 errmsg(
"unable to map dynamic shared memory segment")));
89 errmsg(
"bad magic number in dynamic shared memory segment")));
90
91
92
93
94
95
96
97
98
106 errmsg(
"too many message queue testing workers already")));
107
108
109
110
112
113
114
115
116
117
118
119
120
121
127 {
128 elog(
DEBUG1,
"registrant backend has exited prematurely");
130 }
132
133
135
136
137
138
139
142}
void BackgroundWorkerUnblockSignals(void)
void dsm_detach(dsm_segment *seg)
void * dsm_segment_address(dsm_segment *seg)
dsm_segment * dsm_attach(dsm_handle h)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
void SetLatch(Latch *latch)
static uint32 DatumGetUInt32(Datum X)
BackgroundWorker * MyBgworkerEntry
PGPROC * BackendPidGetProc(int pid)
void * shm_toc_lookup(shm_toc *toc, uint64 key, bool noError)
shm_toc * shm_toc_attach(uint64 magic, void *address)
#define SpinLockRelease(lock)
#define SpinLockAcquire(lock)
static void attach_to_queues(dsm_segment *seg, shm_toc *toc, int myworkernumber, shm_mq_handle **inqhp, shm_mq_handle **outqhp)
static void copy_messages(shm_mq_handle *inqh, shm_mq_handle *outqh)
#define PG_TEST_SHM_MQ_MAGIC
References attach_to_queues(), BackendPidGetProc(), BackgroundWorkerUnblockSignals(), BackgroundWorker::bgw_notify_pid, copy_messages(), DatumGetUInt32(), DEBUG1, die, dsm_attach(), dsm_detach(), dsm_segment_address(), elog, ereport, errcode(), errmsg(), ERROR, fb(), test_shm_mq_header::mutex, MyBgworkerEntry, PG_TEST_SHM_MQ_MAGIC, pqsignal, proc_exit(), SetLatch(), shm_toc_attach(), shm_toc_lookup(), SpinLockAcquire, SpinLockRelease, test_shm_mq_header::workers_attached, test_shm_mq_header::workers_ready, and test_shm_mq_header::workers_total.