From 59cc2f58e6cd7bb247cb7b92eb460df0d06fab07 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Tue, 19 May 2015 19:21:46 +0300 Subject: [PATCH] Fix off-by-one error in Assertion. The point of the assertion is to ensure that the arrays allocated in stack are large enough, but the check was one item short. This won't matter in practice because MaxIndexTuplesPerPage is an overestimate, so you can't have that many items on a page in reality. But let's be tidy. Spotted by Anastasia Lubennikova. Backpatch to all supported versions, like the patch that added the assertion. --- src/backend/storage/page/bufpage.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/storage/page/bufpage.c b/src/backend/storage/page/bufpage.c index 7136472a42a..f577864bd79 100644 --- a/src/backend/storage/page/bufpage.c +++ b/src/backend/storage/page/bufpage.c @@ -723,7 +723,7 @@ PageIndexMultiDelete(Page page, OffsetNumber *itemnos, int nitems) int nextitm; OffsetNumber offnum; - Assert(nitems < MaxIndexTuplesPerPage); + Assert(nitems <= MaxIndexTuplesPerPage); /* * If there aren't very many items to delete, then retail