Re: Reducing ClogControlLock contention
От | Simon Riggs |
---|---|
Тема | Re: Reducing ClogControlLock contention |
Дата | |
Msg-id | CANP8+jLxC1yhMtwPCGfbyqjuhoasYvuT8C09hqK=3tGsN_Hf+Q@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Reducing ClogControlLock contention (Amit Kapila <amit.kapila16@gmail.com>) |
Ответы |
Re: Reducing ClogControlLock contention
|
Список | pgsql-hackers |
On 26 August 2015 at 11:40, Amit Kapila <amit.kapila16@gmail.com> wrote:
I'm wondering if its worth making this work on 32-bit systems at all. The contention problems only occur on higher end servers, so we can just disable this optimization if we aren't on a 64bit server.
--
On Tue, Aug 25, 2015 at 2:21 PM, Simon Riggs <simon@2ndquadrant.com> wrote:On 22 August 2015 at 15:14, Andres Freund <andres@anarazel.de> wrote:TransactionIdSetPageStatus() calls TransactionIdSetStatusBit(), which
writes an 8 byte variable (the lsn). That's not safe.Agreed, thanks for spotting that.I see this as the biggest problem to overcome with this patch.How about using 64bit atomics or spinlock to protect this variable?
Spinlock is out IMHO because this happens on every clog lookup. So it must be an atomic read.
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
В списке pgsql-hackers по дате отправления: