Re: Problem with synchronous replication - Mailing list pgsql-hackers

From Kyotaro Horiguchi
Subject Re: Problem with synchronous replication
Date
Msg-id 20191030.174304.523404903817205414.horikyota.ntt@gmail.com
Whole thread Raw
In response to Re: Problem with synchronous replication  (Fujii Masao <masao.fujii@gmail.com>)
Responses Re: Problem with synchronous replication  (Michael Paquier <michael@paquier.xyz>)
List pgsql-hackers
Hello.

At Wed, 30 Oct 2019 17:21:17 +0900, Fujii Masao <masao.fujii@gmail.com> wrote in 
> This change causes every ending backends to always take the exclusive lock
> even when it's not in SyncRep queue. This may be problematic, for example,
> when terminating multiple backends at the same time? If yes,
> it might be better to check SHMQueueIsDetached() again after taking the lock.
> That is,

I'm not sure how much that harms but double-checked locking
(releasing) is simple enough for reducing possible congestion here, I
think. In short, + 1 for that.

> if (!SHMQueueIsDetached(&(MyProc->syncRepLinks)))
> {
>     LWLockAcquire(SyncRepLock, LW_EXCLUSIVE);
>     if (!SHMQueueIsDetached(&(MyProc->syncRepLinks)))
>         SHMQueueDelete(&(MyProc->syncRepLinks));
>     LWLockRelease(SyncRepLock);
> }

regards.

-- 
Kyotaro Horiguchi
NTT Open Source Software Center



pgsql-hackers by date:

Previous
From: Ibrar Ahmed
Date:
Subject: Proposal: Global Index
Next
From: Masahiko Sawada
Date:
Subject: Re: [HACKERS] Block level parallel vacuum