toast operations while locking a buffer

Started by Hiroshi Inoueabout 25 years ago2 messages
#1Hiroshi Inoue
Inoue@tpf.co.jp

Hi all

I see heap_tuple_toast_attrs() calls in heapam.c.
When they are called from heap_update/delete()
,a buffer is locked.
OTOH heap_tuple_toast_attrs() calls heap_open(..,
.., RowExclusiveLock). Hmm,try to acquire a
RowExclusiveLock while locking a buffer.
Is there no problem ?

Regards.

Hiroshi Inoue

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Hiroshi Inoue (#1)
Re: toast operations while locking a buffer

Hiroshi Inoue <Inoue@tpf.co.jp> writes:

I see heap_tuple_toast_attrs() calls in heapam.c.
When they are called from heap_update/delete()
,a buffer is locked.

Hm. Seems like it would be better to do the tuple toasting before
we lock the target buffer...

regards, tom lane