pgsql: Call xlc __isync() after, not before, associated compare-and-swa

Поиск
Список
Период
Сортировка
От Noah Misch
Тема pgsql: Call xlc __isync() after, not before, associated compare-and-swa
Дата
Msg-id E1aWyaL-0003X5-RV@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Call xlc __isync() after, not before, associated compare-and-swap.

Architecture reference material specifies this order, and s_lock.h
inline assembly agrees.  The former order failed to provide mutual
exclusion to lwlock.c and perhaps to other clients.  The two xlc
buildfarm members, hornet and mandrill, have failed sixteen times with
duplicate key errors involving pg_class_oid_index or pg_type_oid_index.
Back-patch to 9.5, where commit b64d92f1a5602c55ee8b27a7ac474f03b7aee340
introduced atomics.

Reviewed by Andres Freund and Tom Lane.

Branch
------
REL9_5_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/377a1af56a5ad6e5c47e0a5141abbd912169f750

Modified Files
--------------
src/bin/pgbench/.gitignore             |  1 +
src/bin/pgbench/Makefile               |  6 ++++++
src/bin/pgbench/t/001_pgbench.pl       | 24 ++++++++++++++++++++++++
src/include/port/atomics/generic-xlc.h | 22 ++++++++++++++--------
src/tools/msvc/clean.bat               |  1 +
5 files changed, 46 insertions(+), 8 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Noah Misch
Дата:
Сообщение: pgsql: Call xlc __isync() after, not before, associated compare-and-swa
Следующее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: doc: Improve CSS style of option element