Re: Slow standby snapshot
| От | Tom Lane |
|---|---|
| Тема | Re: Slow standby snapshot |
| Дата | |
| Msg-id | 1259278.1668559586@sss.pgh.pa.us обсуждение |
| Ответ на | Re: Slow standby snapshot (Andres Freund <andres@anarazel.de>) |
| Ответы |
Re: Slow standby snapshot
|
| Список | pgsql-hackers |
Andres Freund <andres@anarazel.de> writes:
> To me it sounds like known_assigned_xids_lck is pointless and the talk about
> memory barriers a red herring, since all modifications have to happen with
> ProcArrayLock held exlusively and all reads with ProcArrayLock held in share
> mode. It can't be legal to modify head/tail or the contents of the array
> outside of that. And lwlocks provide sufficient barrier semantics.
No ... RecordKnownAssignedTransactionIds calls KnownAssignedXidsAdd
with exclusive_lock = false, and in the typical case that will not
acquire ProcArrayLock at all. Since there's only one writer, that
seems safe enough, and I believe the commentary's claim that we
really just need to be sure the head-pointer update is seen
after the array updates.
regards, tom lane
В списке pgsql-hackers по дате отправления: