postgres.git / summary / log / commit / refs
commit 9598afa3b0f7a7fdcf3740173346950b2bd5942c
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date: Fri Jul 08 14:28:27 2011 +0000
First released in: 9.2.0, 9.1.0
Fix one overflow and one signedness error, caused by the patch to calculate
OLDSERXID_MAX_PAGE based on BLCKSZ. MSVC compiler warned about these.
src/backend/storage/lmgr/predicate.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/backend/storage/lmgr/predicate.c b/src/backend/storage/lmgr/predicate.c
index 3c3a6a9d963..35fbc8f5a2d 100644
--- a/src/backend/storage/lmgr/predicate.c
+++ b/src/backend/storage/lmgr/predicate.c
@@ -311,7 +311,7 @@ static SlruCtlData OldSerXidSlruCtlData;
* transactions and the maximum that SLRU supports.
*/
#define OLDSERXID_MAX_PAGE Min(SLRU_PAGES_PER_SEGMENT * 0x10000 - 1, \
- (MaxTransactionId + 1) / OLDSERXID_ENTRIESPERPAGE - 1)
+ (MaxTransactionId) / OLDSERXID_ENTRIESPERPAGE)
#define OldSerXidNextPage(page) (((page) >= OLDSERXID_MAX_PAGE) ? 0 : (page) + 1)
@@ -767,7 +767,7 @@ OldSerXidPagePrecedesLogically(int p, int q)
diff = p - q;
if (diff >= ((OLDSERXID_MAX_PAGE + 1) / 2))
diff -= OLDSERXID_MAX_PAGE + 1;
- else if (diff < -((OLDSERXID_MAX_PAGE + 1) / 2))
+ else if (diff < -((int) (OLDSERXID_MAX_PAGE + 1) / 2))
diff += OLDSERXID_MAX_PAGE + 1;
return diff < 0;
}
[parent: 7544064b15d2]