150 iov[0].
data = &msgtype;
185 WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE);
242 if (strcmp(
value,
"DEBUG") == 0)
251 else if (strcmp(
value,
"LOG") == 0)
259 else if (strcmp(
value,
"INFO") == 0)
261 else if (strcmp(
value,
"NOTICE") == 0)
263 else if (strcmp(
value,
"WARNING") == 0)
265 else if (strcmp(
value,
"ERROR") == 0)
267 else if (strcmp(
value,
"FATAL") == 0)
269 else if (strcmp(
value,
"PANIC") == 0)
275 if (strlen(
value) != 5)
326 elog(
ERROR,
"unrecognized error field code: %d", (
int) code);
bool IsLogicalParallelApplyWorker(void)
#define Assert(condition)
#define MemSet(start, val, len)
void on_dsm_detach(dsm_segment *seg, on_dsm_detach_callback function, Datum arg)
#define MAKE_SQLSTATE(ch1, ch2, ch3, ch4, ch5)
ProtocolVersion FrontendProtocol
#define IsParallelWorker()
void ResetLatch(Latch *latch)
int WaitLatch(Latch *latch, int wakeEvents, long timeout, uint32 wait_event_info)
#define WL_EXIT_ON_PM_DEATH
char * pstrdup(const char *in)
MemoryContext CurrentMemoryContext
#define CHECK_FOR_INTERRUPTS()
int32 pg_strtoint32(const char *s)
CommandDest whereToSendOutput
#define PG_DIAG_INTERNAL_QUERY
#define PG_DIAG_SCHEMA_NAME
#define PG_DIAG_CONSTRAINT_NAME
#define PG_DIAG_DATATYPE_NAME
#define PG_DIAG_SOURCE_LINE
#define PG_DIAG_STATEMENT_POSITION
#define PG_DIAG_SOURCE_FILE
#define PG_DIAG_MESSAGE_HINT
#define PG_DIAG_SEVERITY_NONLOCALIZED
#define PG_DIAG_TABLE_NAME
#define PG_DIAG_MESSAGE_PRIMARY
#define PG_DIAG_COLUMN_NAME
#define PG_DIAG_MESSAGE_DETAIL
#define PG_DIAG_SOURCE_FUNCTION
#define PG_DIAG_INTERNAL_POSITION
const PQcommMethods * PqCommMethods
#define PG_PROTOCOL_LATEST
static int mq_flush(void)
static void pq_cleanup_redirect_to_shm_mq(dsm_segment *seg, Datum arg)
static const PQcommMethods PqCommMqMethods
static ProcNumber pq_mq_parallel_leader_proc_number
void pq_set_parallel_leader(pid_t pid, ProcNumber procNumber)
static int mq_putmessage(char msgtype, const char *s, size_t len)
static bool mq_is_send_pending(void)
static pid_t pq_mq_parallel_leader_pid
void pq_parse_errornotice(StringInfo msg, ErrorData *edata)
static shm_mq_handle * pq_mq_handle
static void mq_putmessage_noblock(char msgtype, const char *s, size_t len)
void pq_redirect_to_shm_mq(dsm_segment *seg, shm_mq_handle *mqh)
static void mq_comm_reset(void)
static int mq_flush_if_writable(void)
#define INVALID_PROC_NUMBER
int SendProcSignal(pid_t pid, ProcSignalReason reason, ProcNumber procNumber)
@ PROCSIG_PARALLEL_MESSAGE
@ PROCSIG_PARALLEL_APPLY_MESSAGE
void shm_mq_detach(shm_mq_handle *mqh)
shm_mq_result shm_mq_sendv(shm_mq_handle *mqh, shm_mq_iovec *iov, int iovcnt, bool nowait, bool force_flush)
struct MemoryContextData * assoc_context