Use atomic access for SlruShared->latest_page_number
commitd172b717c6f436738cc8383a4e9f611ae227fd93
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Tue, 6 Feb 2024 09:54:10 +0000 (6 10:54 +0100)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Tue, 6 Feb 2024 09:54:10 +0000 (6 10:54 +0100)
tree9e0534de49aefc6ea176cf6e8c963a25cd0aa55c
parentb83033c3cff556d520281aaec399e47b4f11edbe
Use atomic access for SlruShared->latest_page_number

The new concurrency model proposed for slru.c to improve performance
does not include any single lock that would coordinate processes
doing concurrent reads/writes on SlruShared->latest_page_number.
We can instead use atomic reads and writes for that variable.

Author: Dilip Kumar <dilipbalaut@gmail.com>
Reviewed-by: Andrey M. Borodin <x4mmm@yandex-team.ru>
Discussion: https://postgr.es/m/CAFiTN-vzDvNz=ExGXz6gdyjtzGixKSqs0mKHMmaQ8sOSEFZ33A@mail.gmail.com
src/backend/access/transam/clog.c
src/backend/access/transam/commit_ts.c
src/backend/access/transam/multixact.c
src/backend/access/transam/slru.c
src/include/access/slru.h