On Fri, Aug 15, 2014 at 1:55 AM, Robert Haas <[email protected]> wrote: > On Mon, Aug 11, 2014 at 3:20 AM, Fujii Masao <[email protected]> wrote: >> There is no extra spinlock. > > The version I reviewed had one; that's what I was objecting to.
Sorry for confusing you. I posted the latest patch to other thread. This version doesn't use any spinlock. http://www.postgresql.org/message-id/CAHGQGwEwuh5CC3ib6wd0fxs9LAWme=ko09s4moxnynafn7n...@mail.gmail.com > Might need to add some pg_read_barrier() and pg_write_barrier() calls, > since we have those now. Yep, memory barries might be needed as follows. * Set the commit timestamp to shared memory. shmem->counter++; pg_write_barrier(); shmem->timestamp = my_timestamp; pg_write_barrier(); shmem->count++; * Read the commit timestamp from shared memory my_count = shmem->counter; pg_read_barrier(); my_timestamp = shmem->timestamp; pg_read_barrier(); my_count = shmem->counter; Is this way to use memory barriers right? Regards, -- Fujii Masao -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
