mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-09 08:10:09 +08:00
Prevents possible packet loss from SIGCHLD.
This commit is contained in:
parent
a38b0f6cb9
commit
deaaecdf2e
@ -10,7 +10,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.7 1996/09/16 05:40:31 scrappy Exp $
|
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.8 1996/09/26 03:17:44 momjian Exp $
|
||||||
*
|
*
|
||||||
* NOTES
|
* NOTES
|
||||||
*
|
*
|
||||||
@ -435,16 +435,15 @@ ServerLoop()
|
|||||||
fprintf(stderr, "%s: ServerLoop: select failed\n",
|
fprintf(stderr, "%s: ServerLoop: select failed\n",
|
||||||
progname);
|
progname);
|
||||||
return(STATUS_ERROR);
|
return(STATUS_ERROR);
|
||||||
/* [TRH]
|
|
||||||
* To avoid race conditions, block SIGCHLD signals while we are
|
|
||||||
* handling the request. (both reaper() and ConnCreate()
|
|
||||||
* manipulate the BackEnd list, and reaper() calls free() which is
|
|
||||||
* usually non-reentrant.)
|
|
||||||
*/
|
|
||||||
sigprocmask(SIG_BLOCK, &newsigmask, &oldsigmask);
|
|
||||||
/* sigblock(sigmask(SIGCHLD)); */ /* XXX[TRH] portability */
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
/* [TRH]
|
||||||
|
* To avoid race conditions, block SIGCHLD signals while we are
|
||||||
|
* handling the request. (both reaper() and ConnCreate()
|
||||||
|
* manipulate the BackEnd list, and reaper() calls free() which is
|
||||||
|
* usually non-reentrant.)
|
||||||
|
*/
|
||||||
|
sigprocmask(SIG_BLOCK, &newsigmask, &oldsigmask);
|
||||||
|
/* sigblock(sigmask(SIGCHLD)); */ /* XXX[TRH] portability */
|
||||||
if (DebugLvl > 1) {
|
if (DebugLvl > 1) {
|
||||||
fprintf(stderr, "%s: ServerLoop: %d sockets pending\n",
|
fprintf(stderr, "%s: ServerLoop: %d sockets pending\n",
|
||||||
progname, nSelected);
|
progname, nSelected);
|
||||||
|
Loading…
Reference in New Issue
Block a user