fix-bootstrap-signal-handling.patch
text/x-diff
Filename: fix-bootstrap-signal-handling.patch
Type: text/x-diff
Part: 0
Patch
Format: unified
| File | + | − |
|---|---|---|
| src/backend/bootstrap/bootstrap.c | 10 | 5 |
diff --git a/src/backend/bootstrap/bootstrap.c b/src/backend/bootstrap/bootstrap.c
index d8776e1..825433d 100644
--- a/src/backend/bootstrap/bootstrap.c
+++ b/src/backend/bootstrap/bootstrap.c
@@ -558,11 +558,16 @@ bootstrap_signals(void)
{
Assert(!IsUnderPostmaster);
- /* Set up appropriately for interactive use */
- pqsignal(SIGHUP, die);
- pqsignal(SIGINT, die);
- pqsignal(SIGTERM, die);
- pqsignal(SIGQUIT, die);
+ /*
+ * We don't actually need any non-default signal handling in bootstrap
+ * mode; "curl up and die" is a sufficient response for all these cases.
+ * But let's just make sure the signals are set that way, since our parent
+ * process initdb has them set differently.
+ */
+ pqsignal(SIGHUP, SIG_DFL);
+ pqsignal(SIGINT, SIG_DFL);
+ pqsignal(SIGTERM, SIG_DFL);
+ pqsignal(SIGQUIT, SIG_DFL);
}
/*