Fix off-by-one in LimitAdditionalPins()

Due to the bug LimitAdditionalPins() could return 0, violating
LimitAdditionalPins()'s API ("One additional pin is always allowed"). This
could be hit when setting shared_buffers very low and using a fair amount of
concurrency.

This bug was introduced in 31966b151e6a.

Author: "Anton A. Melnikov" <aamelni...@inbox.ru>
Reported-by: "Anton A. Melnikov" <aamelni...@inbox.ru>
Reported-by: Victoria Shepard
Discussion: https://postgr.es/m/ae46f2fb-5586-3de0-b54b-1bb0f6410...@inbox.ru
Backpatch: 16-

Branch
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/bd2f46c6559ddcafe7bae5015ac45b69bc014067

Modified Files
--------------
src/backend/storage/buffer/bufmgr.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Reply via email to