summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2013-07-22 14:13:00 -0400
committerRobert Haas <rhaas@postgresql.org>2013-07-22 14:13:00 -0400
commitf40a318eeaed0c66fcb2ddd442006e54bf49c634 (patch)
treead7b6ddbadf0c36dd1171603ee4cb2da5a2e8f1c /src
parent0518eceec3a1cc2b71da04e839f05f555fdd8567 (diff)
Remove bgw_sighup and bgw_sigterm.
Per discussion on pgsql-hackers, these aren't really needed. Interim versions of the background worker patch had the worker starting with signals already unblocked, which would have made this necessary. But the final version does not, so we don't really need it; and it doesn't work well with the new facility for starting dynamic background workers, so just rip it out. Also per discussion on pgsql-hackers, back-patch this change to 9.3. It's best to get the API break out of the way before we do an official release of this facility, to avoid more pain for extension authors later.
Diffstat (limited to 'src')
-rw-r--r--src/backend/postmaster/bgworker.c2
-rw-r--r--src/backend/postmaster/postmaster.c13
-rw-r--r--src/include/postmaster/bgworker.h3
3 files changed, 2 insertions, 16 deletions
diff --git a/src/backend/postmaster/bgworker.c b/src/backend/postmaster/bgworker.c
index 3728d85486d..ada24e905e6 100644
--- a/src/backend/postmaster/bgworker.c
+++ b/src/backend/postmaster/bgworker.c
@@ -247,8 +247,6 @@ BackgroundWorkerStateChange(void)
rw->rw_worker.bgw_restart_time = slot->worker.bgw_restart_time;
rw->rw_worker.bgw_main = slot->worker.bgw_main;
rw->rw_worker.bgw_main_arg = slot->worker.bgw_main_arg;
- rw->rw_worker.bgw_sighup = slot->worker.bgw_sighup;
- rw->rw_worker.bgw_sigterm = slot->worker.bgw_sigterm;
/* Initialize postmaster bookkeeping. */
rw->rw_backend = NULL;
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c
index d9b800c4e70..7894217ed52 100644
--- a/src/backend/postmaster/postmaster.c
+++ b/src/backend/postmaster/postmaster.c
@@ -5357,17 +5357,8 @@ do_start_bgworker(void)
pqsignal(SIGUSR1, bgworker_sigusr1_handler);
pqsignal(SIGFPE, SIG_IGN);
}
-
- /* SIGTERM and SIGHUP are configurable */
- if (worker->bgw_sigterm)
- pqsignal(SIGTERM, worker->bgw_sigterm);
- else
- pqsignal(SIGTERM, bgworker_die);
-
- if (worker->bgw_sighup)
- pqsignal(SIGHUP, worker->bgw_sighup);
- else
- pqsignal(SIGHUP, SIG_IGN);
+ pqsignal(SIGTERM, bgworker_die);
+ pqsignal(SIGHUP, SIG_IGN);
pqsignal(SIGQUIT, bgworker_quickdie);
InitializeTimeouts(); /* establishes SIGALRM handler */
diff --git a/src/include/postmaster/bgworker.h b/src/include/postmaster/bgworker.h
index 794eb390725..b260dc5e4e8 100644
--- a/src/include/postmaster/bgworker.h
+++ b/src/include/postmaster/bgworker.h
@@ -53,7 +53,6 @@
typedef void (*bgworker_main_type) (Datum main_arg);
-typedef void (*bgworker_sighdlr_type) (SIGNAL_ARGS);
/*
* Points in time at which a bgworker can request to be started
@@ -79,8 +78,6 @@ typedef struct BackgroundWorker
char bgw_library_name[BGW_MAXLEN]; /* only if bgw_main is NULL */
char bgw_function_name[BGW_MAXLEN]; /* only if bgw_main is NULL */
Datum bgw_main_arg;
- bgworker_sighdlr_type bgw_sighup;
- bgworker_sighdlr_type bgw_sigterm;
} BackgroundWorker;
/* Register a new bgworker during shared_preload_libraries */