From ed4662882dc1377ac9bf60e149b462c4f5b6bfec Mon Sep 17 00:00:00 2001
From: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: Mon, 29 Apr 2019 14:15:19 -0400
Subject: [PATCH] Widen tuple counter variable to 64 bits

Progress reporting would have wrapped around for indexes created
with more than 2^31 tuples.
---
 src/backend/access/hash/hashsort.c  | 2 +-
 src/backend/access/nbtree/nbtsort.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/backend/access/hash/hashsort.c b/src/backend/access/hash/hashsort.c
index 00a57470a77..7b7fdb62b51 100644
--- a/src/backend/access/hash/hashsort.c
+++ b/src/backend/access/hash/hashsort.c
@@ -118,7 +118,7 @@ void
 _h_indexbuild(HSpool *hspool, Relation heapRel)
 {
 	IndexTuple	itup;
-	long		tups_done = 0;
+	uint64		tups_done = 0;
 #ifdef USE_ASSERT_CHECKING
 	uint32		hashkey = 0;
 #endif
diff --git a/src/backend/access/nbtree/nbtsort.c b/src/backend/access/nbtree/nbtsort.c
index 9ac4c1e1c08..2e287d35dcb 100644
--- a/src/backend/access/nbtree/nbtsort.c
+++ b/src/backend/access/nbtree/nbtsort.c
@@ -1130,7 +1130,7 @@ _bt_load(BTWriteState *wstate, BTSpool *btspool, BTSpool *btspool2)
 	int			i,
 				keysz = IndexRelationGetNumberOfKeyAttributes(wstate->index);
 	SortSupport sortKeys;
-	long		tuples_done = 0;
+	uint64		tuples_done = 0;
 
 	if (merge)
 	{
-- 
2.17.1

