Re: [HACKERS] Moving relation extension locks out of heavyweight lock manager
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Masahiko Sawada <sawada.mshk@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Andres Freund <andres@anarazel.de>, Michael Paquier <michael@paquier.xyz>,
Mithun Cy <mithun.cy@enterprisedb.com>, Tom Lane <tgl@sss.pgh.pa.us>, Thomas Munro <thomas.munro@enterprisedb.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2020-02-06T04:16:18Z
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 Tue, Jun 26, 2018 at 12:47 PM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > Type of table: normal table, unlogged table > Number of child tables : 16, 64 (all tables are located on the same tablespace) > Number of clients : 32 > Number of trials : 100 > Duration: 180 seconds for each trials > > The hardware spec of server is Intel Xeon 2.4GHz (HT 160cores), 256GB > RAM, NVMe SSD 1.5TB. > Each clients load 10kB random data across all partitioned tables. > > Here is the result. > > childs | type | target | avg_tps | diff with HEAD > --------+----------+---------+------------+------------------ > 16 | normal | HEAD | 1643.833 | > 16 | normal | Patched | 1619.5404 | 0.985222 > 16 | unlogged | HEAD | 9069.3543 | > 16 | unlogged | Patched | 9368.0263 | 1.032932 > 64 | normal | HEAD | 1598.698 | > 64 | normal | Patched | 1587.5906 | 0.993052 > 64 | unlogged | HEAD | 9629.7315 | > 64 | unlogged | Patched | 10208.2196 | 1.060073 > (8 rows) > > For normal tables, loading tps decreased 1% ~ 2% with this patch > whereas it increased 3% ~ 6% for unlogged tables. There were > collisions at 0 ~ 5 relation extension lock slots between 2 relations > in the 64 child tables case but it didn't seem to affect the tps. > How did you measure the collisions in this test? I think it is better if Mahendra can also use the same technique in measuring that count. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com