pgsql: Allow page lock to conflict among parallel group members.

From: Amit Kapila <akapila(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Allow page lock to conflict among parallel group members.
Date: 2020-03-21 03:27:07
Message-ID: E1jFUmx-0004N0-Qe@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Allow page lock to conflict among parallel group members.

This is required as it is no safer for two related processes to perform
clean up in gin indexes at a time than for unrelated processes to do the
same. After acquiring page locks, we can acquire relation extension lock
but reverse never happens which means these will also not participate in
deadlock. So, avoid checking wait edges from this lock.

Currently, the parallel mode is strictly read-only, but after this patch
we have the infrastructure to allow parallel inserts and parallel copy.

Author: Dilip Kumar, Amit Kapila
Reviewed-by: Amit Kapila, Kuntal Ghosh and Sawada Masahiko
Discussion: https://postgr.es/m/CAD21AoCmT3cFQUN4aVvzy5chw7DuzXrJCbrjTU05B+Ss=Gn1LA@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3ba59ccc896e8877e2fbfb8d4f148904cad5f9b0

Modified Files
--------------
src/backend/optimizer/plan/planner.c | 13 +++-----
src/backend/storage/lmgr/README | 60 ++++++++++++++++++++----------------
src/backend/storage/lmgr/deadlock.c | 9 +++---
src/backend/storage/lmgr/lock.c | 6 ++--
src/backend/storage/lmgr/proc.c | 12 ++++----
5 files changed, 53 insertions(+), 47 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Noah Misch 2020-03-21 16:45:57 pgsql: Skip WAL for new relfilenodes, under wal_level=minimal.
Previous Message Bruce Momjian 2020-03-21 00:19:41 pgsql: docs: use alias in WHERE clause of full text search example