Re: Good name for new lock type for VACUUM? - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Good name for new lock type for VACUUM?
Date
Msg-id 8765.993331743@sss.pgh.pa.us
Whole thread Raw
In response to RE: Good name for new lock type for VACUUM?  ("Hiroshi Inoue" <Inoue@tpf.co.jp>)
Responses Re: Good name for new lock type for VACUUM?  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-hackers
"Hiroshi Inoue" <Inoue@tpf.co.jp> writes:
> Isn't it a better idea to have a separate 'SELF EXCLUSIVE' lock
> which conflicts with only itself ?
>> 
>> *Only* itself?  What would that be useful for?

> Isn't VacuumLock = RowExclusiveLock  + SelfExclusiveLock 
> for the table ?

Oh, I see, you're suggesting acquiring two separate locks on the table.
Hmm.  There would be a risk of deadlock if two processes tried to
acquire these locks in different orders.  That's not a big problem for
VACUUM, since all processes would presumably be executing the same
VACUUM code.  But it raises questions about just how useful this lock
type would be in general-purpose use.  You could never acquire *only*
this lock type, it'd have to be combined with something else, so it
seems like any usage would have to be carefully examined for deadlocks.

Still, it's an interesting alternative.  Comments anyone?
        regards, tom lane


pgsql-hackers by date:

Previous
From: "Hiroshi Inoue"
Date:
Subject: RE: Good name for new lock type for VACUUM?
Next
From: mlw
Date:
Subject: Working out of the box