greenplumn pqsignal 源码

  • 2022-08-18
  • 浏览 (65)

greenplumn pqsignal 代码


 * pqsignal.c
 *	  Backend signal(2) support (see also src/port/pqsignal.c)
 * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
 * Portions Copyright (c) 1994, Regents of the University of California
 *	  src/backend/libpq/pqsignal.c
 * ------------------------------------------------------------------------

#include "postgres.h"

#include "libpq/pqsignal.h"

/* Global variables */
sigset_t	UnBlockSig,

 * Initialize BlockSig, UnBlockSig, and StartupBlockSig.
 * BlockSig is the set of signals to block when we are trying to block
 * signals.  This includes all signals we normally expect to get, but NOT
 * signals that should never be turned off.
 * StartupBlockSig is the set of signals to block during startup packet
 * collection; it's essentially BlockSig minus SIGTERM, SIGQUIT, SIGALRM.
 * UnBlockSig is the set of signals to block when we don't want to block
 * signals (is this ever nonzero??)

	/* First set all signals, then clear some. */

	 * Unmark those signals that should never be blocked. Some of these signal
	 * names don't exist on all platforms.  Most do, but might as well ifdef
	 * them all for consistency...
#ifdef SIGTRAP
	sigdelset(&BlockSig, SIGTRAP);
	sigdelset(&StartupBlockSig, SIGTRAP);
#ifdef SIGABRT
	sigdelset(&BlockSig, SIGABRT);
	sigdelset(&StartupBlockSig, SIGABRT);
#ifdef SIGILL
	sigdelset(&BlockSig, SIGILL);
	sigdelset(&StartupBlockSig, SIGILL);
#ifdef SIGFPE
	sigdelset(&BlockSig, SIGFPE);
	sigdelset(&StartupBlockSig, SIGFPE);
#ifdef SIGSEGV
	sigdelset(&BlockSig, SIGSEGV);
	sigdelset(&StartupBlockSig, SIGSEGV);
#ifdef SIGBUS
	sigdelset(&BlockSig, SIGBUS);
	sigdelset(&StartupBlockSig, SIGBUS);
#ifdef SIGSYS
	sigdelset(&BlockSig, SIGSYS);
	sigdelset(&StartupBlockSig, SIGSYS);
#ifdef SIGCONT
	sigdelset(&BlockSig, SIGCONT);
	sigdelset(&StartupBlockSig, SIGCONT);

/* Signals unique to startup */
#ifdef SIGQUIT
	sigdelset(&StartupBlockSig, SIGQUIT);
#ifdef SIGTERM
	sigdelset(&StartupBlockSig, SIGTERM);
#ifdef SIGALRM
	sigdelset(&StartupBlockSig, SIGALRM);


greenplumn 源码目录


greenplumn auth-scram 源码

greenplumn auth 源码

greenplumn be-fsstubs 源码

greenplumn be-gssapi-common 源码

greenplumn be-secure-common 源码

greenplumn be-secure-gssapi 源码

greenplumn be-secure-openssl 源码

greenplumn be-secure 源码

greenplumn crypt 源码

greenplumn hba 源码

0  赞