Robert Haas <robertmh...@gmail.com> writes: > On Thu, Jul 21, 2011 at 6:43 PM, Noah Misch <n...@2ndquadrant.com> wrote: >> On Wed, Jul 20, 2011 at 09:46:33PM -0400, Robert Haas wrote: >>> SIGetDataEntries() can pretty easily be made lock-free. The only real >>> changes that seem to be are needed are (1) to use a 64-bit counter, so >>> you never need to decrement
>> On second thought, won't this be inadequate on 32-bit systems, where updating >> the 64-bit counter produces two stores? You must avoid reading it between >> those stores. > Now that is a potentially big problem. Could we do something similar to the xxid hacks? That is, we have a lot of counters that should be fairly close to each other, so we store only the low-order 32 bits of each notional value, and separately maintain a common high-order word. You probably would need some additional overhead each time the high-order word bumps, but that's reasonably infrequent. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers