Re: Typo in README.barrier - Mailing list pgsql-hackers

From David Rowley
Subject Re: Typo in README.barrier
Date
Msg-id CAApHDvr=WODpYNjvZ0KVm3v-inN0XYoHSuwSzM4O9=_qFS65gQ@mail.gmail.com
Whole thread Raw
In response to Typo in README.barrier  (Tatsuo Ishii <ishii@sraoss.co.jp>)
Responses Re: Typo in README.barrier
List pgsql-hackers
On Mon, 17 May 2021 at 00:11, Tatsuo Ishii <ishii@sraoss.co.jp> wrote:
> I think there is a typo in src/backend/storage/lmgr/README.barrier.
> Attached patch should fix it.

Yeah looks like a typo to me.

I wonder if we also need to fix this part:

> either one does their writes.  Eventually we might be able to use an atomic
> fetch-and-add instruction for this specific case on architectures that support
> it, but we can't rely on that being available everywhere, and we currently
> have no support for it at all.  Use a lock.

That seems to have been written at a time before we got atomics.

The following also might want to mention atomics too:

> 2. Eight-byte loads and stores aren't necessarily atomic.  We assume in
> various places in the source code that an aligned four-byte load or store is
> atomic, and that other processes therefore won't see a half-set value.
> Sadly, the same can't be said for eight-byte value: on some platforms, an
> aligned eight-byte load or store will generate two four-byte operations.  If
> you need an atomic eight-byte read or write, you must make it atomic with a
> lock.

David



pgsql-hackers by date:

Previous
From: Julien Rouhaud
Date:
Subject: Re: compute_query_id and pg_stat_statements
Next
From: Phil Godfrin
Date:
Subject: FDW and connections