Re: Why does execReplication.c lock tuples?
От | Petr Jelinek |
---|---|
Тема | Re: Why does execReplication.c lock tuples? |
Дата | |
Msg-id | 3392745d-706f-3311-27b7-21ced146e690@2ndquadrant.com обсуждение исходный текст |
Ответ на | Why does execReplication.c lock tuples? (Andres Freund <andres@anarazel.de>) |
Ответы |
Re: Why does execReplication.c lock tuples?
|
Список | pgsql-hackers |
Hi, On 20/01/2019 21:03, Andres Freund wrote: > Hi, > > Currently RelationFindReplTupleByIndex(), RelationFindReplTupleSeq() > lock the found tuple. I don't quite get what that achieves - why isn't > dealing with concurrency in the table_update/delete calls at the > callsites sufficient? As far as I can tell there's no meaningful > concurrency handling in the heap_lock_tuple() paths, so it's not like we > follow update chains or anything. > Yeah that's leftover from the conflict detection/handling code that I stripped away to keep the patched manageable size-wise. As things stand now we could remove that and use normal heap_update instead of simple variant. It'll be likely be needed again if we add conflict handling in the future, but perhaps we could be smarter about it then (i.e. I can imagine that it will be per table anyway, not necessarily default behavior). -- Petr Jelinek http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
В списке pgsql-hackers по дате отправления: