diff --git a/mongodb/src/main/java/com/yahoo/ycsb/db/MongoDbClient.java b/mongodb/src/main/java/com/yahoo/ycsb/db/MongoDbClient.java
index 1937671167ff7fd36d79da91aeb385e82aaeab4f..b1b00e6f4c5dfab35ef184bce9bcb9931abefd48 100644
--- a/mongodb/src/main/java/com/yahoo/ycsb/db/MongoDbClient.java
+++ b/mongodb/src/main/java/com/yahoo/ycsb/db/MongoDbClient.java
@@ -284,7 +284,6 @@ public class MongoDbClient extends DB {
 
             FindIterable<Document> findIterable = collection.find(query);
 
-            Document queryResult = null;
             if (fields != null) {
                 Document projection = new Document();
                 for (String field : fields) {
@@ -293,7 +292,7 @@ public class MongoDbClient extends DB {
                 findIterable.projection(projection);
             }
 
-            queryResult = findIterable.first();
+            Document queryResult = findIterable.first();
 
             if (queryResult != null) {
                 fillMap(result, queryResult);
@@ -335,16 +334,21 @@ public class MongoDbClient extends DB {
             Document scanRange = new Document("$gte", startkey);
             Document query = new Document("_id", scanRange);
             Document sort = new Document("_id", INCLUDE);
-            Document projection = null;
+
+            FindIterable<Document> findIterable = collection.find(query)
+                                                            .sort(sort)
+                                                            .limit(recordcount);
+
             if (fields != null) {
-                projection = new Document();
+                Document projection = new Document();
                 for (String fieldName : fields) {
                     projection.put(fieldName, INCLUDE);
                 }
+                findIterable.projection(projection);
             }
 
-            cursor = collection.find(query)
-                    .projection(projection).sort(sort).limit(recordcount).iterator();
+            cursor = findIterable.iterator();
+
             if (!cursor.hasNext()) {
                 System.err.println("Nothing found in scan for key " + startkey);
                 return 1;