Re: Lock on arbitrary string feature

Поиск
Список
Период
Сортировка
От Jan Wieck
Тема Re: Lock on arbitrary string feature
Дата
Msg-id 200101111957.OAA04649@jupiter.jw.home
обсуждение исходный текст
Ответ на Re: Lock on arbitrary string feature  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Tom Lane wrote:
> Lincoln Yeoh <lyeoh@pop.jaring.my> writes:
> > Has anyone any input to offer on adding an arbitrary locking feature?
>
> > Where
> > GETLOCK "string" will lock on "string", the lock being only released at the
> > end of a transaction.
>
> > Any comments, suggestions or tips would be welcome. It looks like quite a
> > complex thing to do - I've only just started looking at the postgresql
> > internals and the lock manager.
>
> A lock is basically an entry in a shared hash table, so you could
> implement this just by having a different kind of key (ie, the given
> string) for these sorts of locks.
>
> However, the whole thing strikes me as more of an ugly kluge than a
> clean solution to the real problem.  If you're not using a UNIQUE
> constraint then you're relying on application logic to guarantee
> consistency, which is bad.  If you do have a UNIQUE constraint and
> want to layer this sort of application lock on top of it, then you
> still have the problem of unexpected failures if some instance/portion
> of your application does inserts without remembering to get the
> application-level lock.  So, as Vadim remarked, doing the insert and
> rolling back to a savepoint on failure would be a much better answer.
   You're right that it's ugly, but at least it'd be a temporary   "solution" for the fact that we cannot  catch
exceptions in   triggers  yet.  So  the if/else logic will currently not work   reliable in a trigger without beeing
ableto lock before  the   SELECT.
 


Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #




В списке pgsql-hackers по дате отправления:

Предыдущее
От: Oleg Bartunov
Дата:
Сообщение: Re: AW: Re: GiST for 7.1 !!
Следующее
От: Tom Lane
Дата:
Сообщение: Overprotectiveness in DefineQueryRewrite?