From: Peter Eisentraut Date: Tue, 15 Aug 2017 19:13:06 +0000 (-0400) Subject: Simplify some code in logical replication launcher X-Git-Tag: REL_11_BETA1~1794 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e42351ae07c19bb4eaedbdce8ccd4dfb4e905069;p=postgresql Simplify some code in logical replication launcher Avoid unnecessary locking calls when a subscription is disabled. Author: Yugo Nagata --- diff --git a/src/backend/replication/logical/launcher.c b/src/backend/replication/logical/launcher.c index 4c6d4b2772..6c894421a3 100644 --- a/src/backend/replication/logical/launcher.c +++ b/src/backend/replication/logical/launcher.c @@ -929,11 +929,14 @@ ApplyLauncherMain(Datum main_arg) Subscription *sub = (Subscription *) lfirst(lc); LogicalRepWorker *w; + if (!sub->enabled) + continue; + LWLockAcquire(LogicalRepWorkerLock, LW_SHARED); w = logicalrep_worker_find(sub->oid, InvalidOid, false); LWLockRelease(LogicalRepWorkerLock); - if (sub->enabled && w == NULL) + if (w == NULL) { last_start_time = now; wait_time = wal_retrieve_retry_interval;