From 5ac0d31e8b4103a8ab72733d09e6c4ccd1e65a86 Mon Sep 17 00:00:00 2001 From: Marco Slot Date: Sun, 7 Nov 2021 23:54:44 +0100 Subject: [PATCH] Fix re-partition hash range generation --- src/backend/distributed/planner/multi_physical_planner.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/backend/distributed/planner/multi_physical_planner.c b/src/backend/distributed/planner/multi_physical_planner.c index 6035e5d5b..9232447d8 100644 --- a/src/backend/distributed/planner/multi_physical_planner.c +++ b/src/backend/distributed/planner/multi_physical_planner.c @@ -4538,6 +4538,12 @@ GenerateSyntheticShardIntervalArray(int partitionCount) int32 shardMinHashToken = PG_INT32_MIN + (shardIndex * hashTokenIncrement); int32 shardMaxHashToken = shardMinHashToken + (hashTokenIncrement - 1); + /* extend the last range to cover the full range of integers */ + if (shardIndex == (partitionCount - 1)) + { + shardMaxHashToken = PG_INT32_MAX; + } + shardInterval->relationId = InvalidOid; shardInterval->minValueExists = true; shardInterval->minValue = Int32GetDatum(shardMinHashToken);