Re: Good name for new lock type for VACUUM?

Bruce Momjian <pgman@candle.pha.pa.us>

From: Bruce Momjian <pgman@candle.pha.pa.us>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Hiroshi Inoue <Inoue@tpf.co.jp>, Peter Eisentraut <peter_e@gmx.net>, pgsql-hackers@postgresql.org
Date: 2001-06-23T22:11:07Z
Lists: 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?

SelfExclusiveLock is clear and can't be confused with other lock types.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026