summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatt dannenberg <matt.dannenberg@10gen.com>2014-11-12 05:53:33 -0500
committermatt dannenberg <matt.dannenberg@10gen.com>2014-11-24 07:38:03 -0500
commit360be90a97b62e2a0801e99275c91a1a80221ef6 (patch)
tree5ba312b4a13748cd64854f64a63790353c614974
parent4f91149f8e106993f4e8c93c557a74570f7f0938 (diff)
downloadmongo-360be90a97b62e2a0801e99275c91a1a80221ef6.tar.gz
SERVER-15994 backport compatibility fixes from 2.8 listDatabase/Collections/Indexes slaveOk changes
-rw-r--r--src/mongo/client/dbclient.cpp5
-rw-r--r--src/mongo/db/repl/master_slave.cpp5
2 files changed, 8 insertions, 2 deletions
diff --git a/src/mongo/client/dbclient.cpp b/src/mongo/client/dbclient.cpp
index c85ce130c5c..4c114078d7c 100644
--- a/src/mongo/client/dbclient.cpp
+++ b/src/mongo/client/dbclient.cpp
@@ -835,7 +835,10 @@ namespace mongo {
list<string> DBClientWithCommands::getDatabaseNames() {
BSONObj info;
- uassert( 10005 , "listdatabases failed" , runCommand( "admin" , BSON( "listDatabases" << 1 ) , info ) );
+ uassert(10005, "listdatabases failed", runCommand("admin",
+ BSON("listDatabases" << 1),
+ info,
+ QueryOption_SlaveOk));
uassert( 10006 , "listDatabases.databases not array" , info["databases"].type() == Array );
list<string> names;
diff --git a/src/mongo/db/repl/master_slave.cpp b/src/mongo/db/repl/master_slave.cpp
index 6d371532d4e..5330b1d8963 100644
--- a/src/mongo/db/repl/master_slave.cpp
+++ b/src/mongo/db/repl/master_slave.cpp
@@ -327,7 +327,10 @@ namespace mongo {
msgassertedNoTrace( 14051 , "unable to connect to resync");
}
/* todo use getDatabaseNames() method here */
- bool ok = oplogReader.conn()->runCommand( "admin", BSON( "listDatabases" << 1 ), info );
+ bool ok = oplogReader.conn()->runCommand("admin",
+ BSON("listDatabases" << 1),
+ info,
+ QueryOption_SlaveOk);
massert( 10385 , "Unable to get database list", ok );
}
BSONObjIterator i( info.getField( "databases" ).embeddedObject() );