diff --git a/core/src/main/java/com/yahoo/ycsb/TerminatorThread.java b/core/src/main/java/com/yahoo/ycsb/TerminatorThread.java index 51deab82dbcbd329735877683cf86d99c122dae8..7d985f82e1777496c5f1ebb7efc408c138bb9359 100644 --- a/core/src/main/java/com/yahoo/ycsb/TerminatorThread.java +++ b/core/src/main/java/com/yahoo/ycsb/TerminatorThread.java @@ -58,7 +58,7 @@ public class TerminatorThread extends Thread { try { t.join(waitTimeOutInMS); if (t.isAlive()) { - System.err.println("Still waiting for thread " + t.getName() + " to complete. " + + System.out.println("Still waiting for thread " + t.getName() + " to complete. " + "Workload status: " + workload.isStopRequested()); } } catch (InterruptedException e) { 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 3082e4c9ae8fd6f1390ed91b4db5a21c26c0fd3d..ed8b30b9ada31e182d4b3719e88a8cc9a2a1b3a5 100644 --- a/mongodb/src/main/java/com/yahoo/ycsb/db/MongoDbClient.java +++ b/mongodb/src/main/java/com/yahoo/ycsb/db/MongoDbClient.java @@ -9,28 +9,15 @@ package com.yahoo.ycsb.db; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.Properties; -import java.util.Set; -import java.util.Vector; -import java.util.concurrent.atomic.AtomicInteger; - -import com.mongodb.BasicDBObject; -import com.mongodb.DBAddress; -import com.mongodb.DBCollection; -import com.mongodb.DBCursor; -import com.mongodb.DBObject; -import com.mongodb.Mongo; -import com.mongodb.MongoOptions; -import com.mongodb.WriteConcern; -import com.mongodb.WriteResult; +import com.mongodb.*; import com.yahoo.ycsb.ByteArrayByteIterator; import com.yahoo.ycsb.ByteIterator; import com.yahoo.ycsb.DB; import com.yahoo.ycsb.DBException; +import java.util.*; +import java.util.concurrent.atomic.AtomicInteger; + /** * MongoDB client for YCSB framework. * @@ -74,6 +61,15 @@ public class MongoDbClient extends DB { Properties props = getProperties(); String url = props.getProperty("mongodb.url", "mongodb://localhost:27017"); + + if (url.contains(",")) { + //pick one and random + String[] urls = url.split(","); + int index = new Random().nextInt(urls.length); + url = urls[index]; + System.out.printf("Using Mongo URL: %s\n", url); + } + database = props.getProperty("mongodb.database", "ycsb"); String writeConcernType = props.getProperty("mongodb.writeConcern", "safe").toLowerCase(); diff --git a/pom.xml b/pom.xml index 287c717823c0097da8d45eecf42211653c3b82f1..39da637ba11e0a79b6e2f8c6d0733c6d0f914a83 100644 --- a/pom.xml +++ b/pom.xml @@ -40,7 +40,7 @@ <version>1.6.4</version> </dependency> </dependencies> - + <!-- Properties Management --> <properties> <maven.assembly.version>2.2.1</maven.assembly.version> @@ -49,7 +49,7 @@ <cassandra.version>0.7.0</cassandra.version> <infinispan.version>7.1.0.CR1</infinispan.version> <openjpa.jdbc.version>2.1.1</openjpa.jdbc.version> - <mapkeeper.version>1.0</mapkeeper.version> + <!--<mapkeeper.version>1.0</mapkeeper.version>--> <mongodb.version>2.11.2</mongodb.version> <orientdb.version>1.0.1</orientdb.version> <redis.version>2.0.0</redis.version> @@ -68,16 +68,16 @@ <module>accumulo</module> <module>dynamodb</module> <module>elasticsearch</module> - <!--<module>gemfire</module>--> <module>infinispan</module> <module>jdbc</module> - <module>mapkeeper</module> <module>mongodb</module> <module>orientdb</module> - <!--module>nosqldb</module--> <module>redis</module> <module>voldemort</module> <module>distribution</module> + <!--<module>mapkeeper</module>--> + <!--module>nosqldb</module--> + <!--<module>gemfire</module>--> </modules> <build>