diff --git a/uid/assigner.go b/uid/assigner.go
index 19287ac37605687eb0ef73e3b5689a571081c129..8fb105b07cea8383738513426f40b0838c239f30 100644
--- a/uid/assigner.go
+++ b/uid/assigner.go
@@ -95,7 +95,7 @@ func init() {
 func allocateUniqueUid(xid string, instanceIdx uint64, numInstances uint64) (uid uint64, rerr error) {
 
 	mod := math.MaxUint64 / numInstances
-	minIdx := instanceIdx * math.MaxUint64 / numInstances
+	minIdx := instanceIdx * mod
 
 	for sp := ""; ; sp += " " {
 		txid := xid + sp