Split use of SerialSLRULock, creating SerialControlLock

Alvaro Herrera <alvherre@alvh.no-ip.org>

Commit: 7b745d85b80d4492c4df8d9769592c7aad1f63d2
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: 2024-01-30T17:11:17Z
Releases: 17.0
Split use of SerialSLRULock, creating SerialControlLock

predicate.c has been using SerialSLRULock (the control lock for its SLRU
structure) to coordinate access to SerialControlData, another of its
numerous shared memory structures; this is unnecessary and confuses
further SLRU scalability work.  Create a separate LWLock to cover
SerialControlData.

Extracted from a larger patch from the same author, and some additional
changes by Álvaro.

Author: Dilip Kumar <dilip.kumar@enterprisedb.com>
Discussion: https://postgr.es/m/CAFiTN-vzDvNz=ExGXz6gdyjtzGixKSqs0mKHMmaQ8sOSEFZ33A@mail.gmail.com

Files

Discussion