summaryrefslogtreecommitdiff
path: root/src/mongo/client/remote_command_targeter_rs.cpp
diff options
context:
space:
mode:
authorSpencer T Brody <spencer@mongodb.com>2015-06-17 16:44:57 -0400
committerSpencer T Brody <spencer@mongodb.com>2015-06-18 16:35:40 -0400
commit6289db7f0a042a9d9fb2e5e1026189a16f6d68ee (patch)
tree39e4eb473cfdddd3d40b7b6bb7131deee85a5547 /src/mongo/client/remote_command_targeter_rs.cpp
parentd7a19f4e49a93de40295d39c00abec96fdffe987 (diff)
downloadmongo-6289db7f0a042a9d9fb2e5e1026189a16f6d68ee.tar.gz
SERVER-19016 Implement runUserManagement{Read,Write}Command in CatalogManagerReplicaSet
Diffstat (limited to 'src/mongo/client/remote_command_targeter_rs.cpp')
-rw-r--r--src/mongo/client/remote_command_targeter_rs.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mongo/client/remote_command_targeter_rs.cpp b/src/mongo/client/remote_command_targeter_rs.cpp
index 9012ec21dbd..49469c3574a 100644
--- a/src/mongo/client/remote_command_targeter_rs.cpp
+++ b/src/mongo/client/remote_command_targeter_rs.cpp
@@ -66,7 +66,11 @@ namespace mongo {
HostAndPort hostAndPort = _rsMonitor->getHostOrRefresh(readPref);
if (hostAndPort.empty()) {
- return Status(ErrorCodes::HostNotFound,
+ if (readPref.pref == ReadPreference::PrimaryOnly) {
+ return Status(ErrorCodes::NotMaster,
+ str::stream() << "No master found for set " << _rsName);
+ }
+ return Status(ErrorCodes::FailedToSatisfyReadPreference,
str::stream() << "could not find host matching read preference "
<< readPref.toString() << " for set " << _rsName);
}