62 errmsg(
"repeat count size must be an integer value greater than or equal to zero")));
72 errmsg(
"number of workers must be an integer value greater than zero")));
82 errmsg(
"could not send message")));
95 errmsg(
"could not receive message")));
106 errmsg(
"could not send message")));
154 errmsg(
"repeat count size must be an integer value greater than or equal to zero")));
163 errmsg(
"number of workers must be an integer value greater than or equal to zero")));
192 errmsg(
"could not send message")));
213 errmsg(
"could not receive message")));
224 errmsg(
"message sent %d times, but received %d times",
264 (
errmsg(
"message corrupted"),
265 errdetail(
"The original message was %zu bytes but the final message is %zu bytes.",
271 (
errmsg(
"message corrupted"),
272 errdetail(
"The new and original messages differ at byte %zu of %zu.",
i,
origlen)));
void dsm_detach(dsm_segment *seg)
int errdetail(const char *fmt,...)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
#define PG_GETARG_TEXT_PP(n)
#define PG_GETARG_INT64(n)
#define PG_FUNCTION_INFO_V1(funcname)
#define PG_GETARG_INT32(n)
#define PG_GETARG_BOOL(n)
void ResetLatch(Latch *latch)
int WaitLatch(Latch *latch, int wakeEvents, long timeout, uint32 wait_event_info)
#define CHECK_FOR_INTERRUPTS()
void test_shm_mq_setup(int64 queue_size, int32 nworkers, dsm_segment **segp, shm_mq_handle **output, shm_mq_handle **input)
shm_mq_result shm_mq_receive(shm_mq_handle *mqh, Size *nbytesp, void **datap, bool nowait)
shm_mq_result shm_mq_send(shm_mq_handle *mqh, Size nbytes, const void *data, bool nowait, bool force_flush)
Datum test_shm_mq_pipelined(PG_FUNCTION_ARGS)
static void verify_message(Size origlen, char *origdata, Size newlen, char *newdata)
Datum test_shm_mq(PG_FUNCTION_ARGS)
static uint32 we_message_queue
static Size VARSIZE_ANY_EXHDR(const void *PTR)
static char * VARDATA_ANY(const void *PTR)
uint32 WaitEventExtensionNew(const char *wait_event_name)
#define WL_EXIT_ON_PM_DEATH