Re: [HACKERS] Moving relation extension locks out of heavyweight lock manager
Masahiko Sawada <sawada.mshk@gmail.com>
From: Masahiko Sawada <sawada.mshk@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Robert Haas <robertmhaas@gmail.com>, Andres Freund <andres@anarazel.de>, Mithun Cy <mithun.cy@enterprisedb.com>, Tom Lane <tgl@sss.pgh.pa.us>, Thomas Munro <thomas.munro@enterprisedb.com>,
Amit Kapila <amit.kapila16@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2018-04-10T09:40:54Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Allow page lock to conflict among parallel group members.
- 3ba59ccc896e 13.0 landed
-
Allow relation extension lock to conflict among parallel group members.
- 85f6b49c2c53 13.0 landed
-
Add assert to ensure that page locks don't participate in deadlock cycle.
- 72e78d831ab5 13.0 landed
-
Assert that we don't acquire a heavyweight lock on another object after
- 15ef6ff4b985 13.0 landed
-
Fix unsafe usage of strerror(errno) within ereport().
- 81256cd05f07 11.0 cited
On Fri, Mar 30, 2018 at 4:43 PM, Michael Paquier <michael@paquier.xyz> wrote: > On Thu, Mar 01, 2018 at 04:01:28PM -0500, Robert Haas wrote: >> If you have a clever idea how to make this work with as few atomic >> operations as the current patch uses while at the same time reducing >> the possibility of contention, I'm all ears. But I don't see how to >> do that. > > This thread has no activity since the beginning of the commit fest, and > it seems that it would be hard to reach something committable for v11, > so I am marking it as returned with feedback. Thank you. The probability of performance degradation can be reduced by increasing N_RELEXTLOCK_ENTS. But as Robert mentioned, while keeping fast and simple implementation like acquiring lock by a few atomic operation it's hard to improve or at least keep the current performance on all cases. I was thinking that this patch is necessary by parallel DML operations and vacuum but if the community cannot accept this approach it might be better to mark it as "Rejected" and then I should reconsider the design of parallel vacuum. Regards, -- Masahiko Sawada NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center