Re: XactLockTableWait doesn't set wait_event correctly - Mailing list pgsql-hackers

From Robert Haas
Subject Re: XactLockTableWait doesn't set wait_event correctly
Date
Msg-id CA+TgmobvNUMtE1Xz8z_R9gnZ-TXebfLif68WktLW7O-7R7gysA@mail.gmail.com
Whole thread Raw
In response to Re: XactLockTableWait doesn't set wait_event correctly  (Simon Riggs <simon@2ndquadrant.com>)
Responses Re: XactLockTableWait doesn't set wait_event correctly  (Simon Riggs <simon@2ndquadrant.com>)
List pgsql-hackers
On Wed, Nov 30, 2016 at 6:50 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
> Obtaining a tuple lock requires two separate actions: First we do
> LockTuple() and then we do XactLockTableWait().

I think that's kind of a confusing way of looking at it.  LockTuple()
waits for a "tuple" lmgr lock, and XactLockTableWait waits for a
"transaction" lmgr lock.  Those two things are both part of a larger
protocol for managing access to what we refer to as tuple locks at the
SQL level.  I don't think conflating those things would be a very good
idea, because it's useful to know which phase you're currently doing -
e.g. anybody waiting on a tuple lock is not first in the queue.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Stephen Frost
Date:
Subject: Re: Mail thread references in commits
Next
From: Simon Riggs
Date:
Subject: Re: Proposal for changes to recovery.conf API