Improve test_lwlock_tranches While working on refactoring how shmem is allocated, I made a mistake where the main LWLock array did not reserve space for the LWLocks allocated with RequestNamedLWLockTranche(), and the test still passed. Matthias van de Meent spotted that before it got committed, but in order to catch such mistakes in the future, add checks in test_lwlock_tranches that the locks allocated with RequestNamedLWLockTranche() can be acquired and released.
Another change is to stop requesting multiple tranches with the same name with RequestNamedLWLockTranche(). As soon as I started to test using the locks I realized that's bogus, and the next commit will forbid it. Keep test coverage for duplicates requested with LWLockNewTrancheId() for now, but make it more clear that that's what the test does. Reviewed-by: Sami Imseih <[email protected]> Discussion: https://www.postgresql.org/message-id/[email protected] Discussion: https://www.postgresql.org/message-id/CAEze2WjgCROMMXY0+j8FFdm3iFcr7By-+6Mwiz=pggseydi...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/92a685e4070d01653daac1d60de6c155723a5c68 Modified Files -------------- .../expected/test_lwlock_tranches.out | 61 +++++++++++---- .../sql/test_lwlock_tranches.sql | 44 +++++++++-- .../test_lwlock_tranches--1.0.sql | 7 +- .../test_lwlock_tranches/test_lwlock_tranches.c | 90 +++++++++++++--------- 4 files changed, 146 insertions(+), 56 deletions(-)
