diff options
author | Robert Haas <rhaas@postgresql.org> | 2019-12-17 13:03:57 -0500 |
---|---|---|
committer | Robert Haas <rhaas@postgresql.org> | 2019-12-17 13:03:57 -0500 |
commit | 1e53fe0e70f610c34f4c9e770d108cd94151342c (patch) | |
tree | 371a110c218d1b236a1f27561c329f11d31195c2 /src/backend/replication/logical/worker.c | |
parent | 5910d6c7e311f0b14e3d3cb9ce3597c01d3a3cde (diff) | |
download | postgresql-1e53fe0e70f610c34f4c9e770d108cd94151342c.tar.gz postgresql-1e53fe0e70f610c34f4c9e770d108cd94151342c.zip |
Use PostgresSigHupHandler in more places.
There seems to be no reason for every background process to have
its own flag indicating that a config-file reload is needed.
Instead, let's just use ConfigFilePending for that purpose
everywhere.
Patch by me, reviewed by Andres Freund and Daniel Gustafsson.
Discussion: http://postgr.es/m/CA+TgmoZwDk=BguVDVa+qdA6SBKef=PKbaKDQALTC_9qoz1mJqg@mail.gmail.com
Diffstat (limited to 'src/backend/replication/logical/worker.c')
-rw-r--r-- | src/backend/replication/logical/worker.c | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/src/backend/replication/logical/worker.c b/src/backend/replication/logical/worker.c index ced0d191c2e..3b12ad64006 100644 --- a/src/backend/replication/logical/worker.c +++ b/src/backend/replication/logical/worker.c @@ -111,9 +111,6 @@ static void store_flush_position(XLogRecPtr remote_lsn); static void maybe_reread_subscription(void); -/* Flags set by signal handlers */ -static volatile sig_atomic_t got_SIGHUP = false; - /* * Should this worker apply changes for given relation. * @@ -1270,9 +1267,9 @@ LogicalRepApplyLoop(XLogRecPtr last_received) CHECK_FOR_INTERRUPTS(); } - if (got_SIGHUP) + if (ConfigReloadPending) { - got_SIGHUP = false; + ConfigReloadPending = false; ProcessConfigFile(PGC_SIGHUP); } @@ -1563,20 +1560,6 @@ subscription_change_cb(Datum arg, int cacheid, uint32 hashvalue) MySubscriptionValid = false; } -/* SIGHUP: set flag to reload configuration at next convenient time */ -static void -logicalrep_worker_sighup(SIGNAL_ARGS) -{ - int save_errno = errno; - - got_SIGHUP = true; - - /* Waken anything waiting on the process latch */ - SetLatch(MyLatch); - - errno = save_errno; -} - /* Logical Replication Apply worker entry point */ void ApplyWorkerMain(Datum main_arg) @@ -1592,7 +1575,7 @@ ApplyWorkerMain(Datum main_arg) logicalrep_worker_attach(worker_slot); /* Setup signal handling */ - pqsignal(SIGHUP, logicalrep_worker_sighup); + pqsignal(SIGHUP, PostgresSigHupHandler); pqsignal(SIGTERM, die); BackgroundWorkerUnblockSignals(); |