Re: Wrong FOR UPDATE lock type

Поиск
Список
Период
Сортировка
От Jan Wieck
Тема Re: Wrong FOR UPDATE lock type
Дата
Msg-id 200012041918.OAA17820@jupiter.jw.home
обсуждение исходный текст
Ответ на RE: Wrong FOR UPDATE lock type  ("Mikheev, Vadim" <vmikheev@SECTORBASE.COM>)
Ответы Re: Wrong FOR UPDATE lock type  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Mikheev, Vadim wrote:
> >     I'm  about  99.666667% sure that the lock type choosen in the
> >     FOR UPDATE case (line  511  of  parse_relation.c)  should  be
> >     RowExclusiveLock  instead  of  RowShareLock.   Actually I get
> >     "Deadlock risk" debug messages when selecting FOR UPDATE  and
> >     then really UPDATE.
>
> http://www.postgresql.org/users-lounge/docs/6.5/user/x3116.htm
>
> RowShareLock
> Acquired by SELECT FOR UPDATE and LOCK TABLE for IN ROW SHARE MODE
> statements.
>
> Conflicts with ExclusiveLock and AccessExclusiveLock modes.
   Tom,
   IIRC  the  "Deadlock risk" debug message is from you. I think   it must get a little smarter. IMHO an application
thatwant's   to  UPDATE  something  in  a  transaction but must SELECT the   row(s) first to do it's own calculation on
them, should  use   SELECT FOR UPDATE. Is that debug output really appropriate in   this case (it raises from
RowShareLock to  RowExclusiveLock   because  of  the  UPDATE  of the previous FOR UPDATE selected   row)?
 


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 по дате отправления:

Предыдущее
От: Thomas Lockhart
Дата:
Сообщение: [Fwd: Re: [CORE] Going Beta on Monday ...]
Следующее
От: Larry Rosenman
Дата:
Сообщение: Re: [Fwd: Re: [CORE] Going Beta on Monday ...]