diff --git a/core/src/main/java/com/yahoo/ycsb/generator/ZipfianGenerator.java b/core/src/main/java/com/yahoo/ycsb/generator/ZipfianGenerator.java
index 8a70f0869a16c7d2776072c1b6c4ed2e94e38e27..017fa05e5723766bc5fbd12ffd950a0eb32a09c3 100644
--- a/core/src/main/java/com/yahoo/ycsb/generator/ZipfianGenerator.java
+++ b/core/src/main/java/com/yahoo/ycsb/generator/ZipfianGenerator.java
@@ -276,12 +276,12 @@ public class ZipfianGenerator extends IntegerGenerator
 
 		if (uz<1.0)
 		{
-			return 0;
+			return base;
 		}
 
 		if (uz<1.0+Math.pow(0.5,theta)) 
 		{
-			return 1;
+			return base + 1;
 		}
 
 		long ret=base+(long)((itemcount) * Math.pow(eta*u - eta + 1, alpha));
diff --git a/core/src/test/java/com/yahoo/ycsb/generator/TestZipfianGenerator.java b/core/src/test/java/com/yahoo/ycsb/generator/TestZipfianGenerator.java
new file mode 100644
index 0000000000000000000000000000000000000000..02677b1b896fa3386b88ffa26906b0882b68eae9
--- /dev/null
+++ b/core/src/test/java/com/yahoo/ycsb/generator/TestZipfianGenerator.java
@@ -0,0 +1,23 @@
+package com.yahoo.ycsb.generator;
+
+import org.testng.annotations.Test;
+import static org.testng.AssertJUnit.assertTrue;
+
+public class TestZipfianGenerator {
+    @Test
+    public void testMinParameter() {
+        long min = 5;
+        long max = 100;
+        Boolean gr_max = true;
+
+        ZipfianGenerator zipfian = new ZipfianGenerator(min, max);
+
+        for (int i = 0; i < 1000; i++) {
+            long rnd = zipfian.nextLong();
+            // System.out.println(rnd);
+            if(rnd < min) gr_max = false;
+        }
+
+        assertTrue(gr_max);
+    }
+}