diff options
author | Randolph Tan <randolph@10gen.com> | 2015-07-29 17:24:35 -0400 |
---|---|---|
committer | Randolph Tan <randolph@10gen.com> | 2015-08-06 09:58:01 -0400 |
commit | 1cfa49411655640a5b1d2da60573c3f01d3c7c38 (patch) | |
tree | ad5b8f6c570905441a51fb283910125f6ebfae65 /src/mongo/db/auth/authz_manager_external_state_s.cpp | |
parent | 1eee2b3a8c079c15ddc79e03e1b1d16b37d427d2 (diff) | |
download | mongo-1cfa49411655640a5b1d2da60573c3f01d3c7c38.tar.gz |
SERVER-19390 Make config server read commands do read committed
Diffstat (limited to 'src/mongo/db/auth/authz_manager_external_state_s.cpp')
-rw-r--r-- | src/mongo/db/auth/authz_manager_external_state_s.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/mongo/db/auth/authz_manager_external_state_s.cpp b/src/mongo/db/auth/authz_manager_external_state_s.cpp index bb62e56168c..b71cf0cf08c 100644 --- a/src/mongo/db/auth/authz_manager_external_state_s.cpp +++ b/src/mongo/db/auth/authz_manager_external_state_s.cpp @@ -69,7 +69,8 @@ Status AuthzManagerExternalStateMongos::getStoredAuthorizationVersion(OperationC // that runs this command BSONObj getParameterCmd = BSON("getParameter" << 1 << authSchemaVersionServerParameter << 1); BSONObjBuilder builder; - const bool ok = grid.catalogManager()->runReadCommand("admin", getParameterCmd, &builder); + const bool ok = + grid.catalogManager()->runUserManagementReadCommand("admin", getParameterCmd, &builder); BSONObj cmdResult = builder.obj(); if (!ok) { return Command::getStatusFromCommandResult(cmdResult); @@ -94,7 +95,8 @@ Status AuthzManagerExternalStateMongos::getUserDescription(OperationContext* txn << userName.getDB())) << "showPrivileges" << true << "showCredentials" << true); BSONObjBuilder builder; - const bool ok = grid.catalogManager()->runReadCommand("admin", usersInfoCmd, &builder); + const bool ok = + grid.catalogManager()->runUserManagementReadCommand("admin", usersInfoCmd, &builder); BSONObj cmdResult = builder.obj(); if (!ok) { return Command::getStatusFromCommandResult(cmdResult); @@ -123,7 +125,8 @@ Status AuthzManagerExternalStateMongos::getRoleDescription(const RoleName& roleN << roleName.getRole() << AuthorizationManager::ROLE_DB_FIELD_NAME << roleName.getDB())) << "showPrivileges" << showPrivileges); BSONObjBuilder builder; - const bool ok = grid.catalogManager()->runReadCommand("admin", rolesInfoCmd, &builder); + const bool ok = + grid.catalogManager()->runUserManagementReadCommand("admin", rolesInfoCmd, &builder); BSONObj cmdResult = builder.obj(); if (!ok) { return Command::getStatusFromCommandResult(cmdResult); @@ -150,7 +153,8 @@ Status AuthzManagerExternalStateMongos::getRoleDescriptionsForDB(const std::stri BSONObj rolesInfoCmd = BSON("rolesInfo" << 1 << "showPrivileges" << showPrivileges << "showBuiltinRoles" << showBuiltinRoles); BSONObjBuilder builder; - const bool ok = grid.catalogManager()->runReadCommand(dbname, rolesInfoCmd, &builder); + const bool ok = + grid.catalogManager()->runUserManagementReadCommand(dbname, rolesInfoCmd, &builder); BSONObj cmdResult = builder.obj(); if (!ok) { return Command::getStatusFromCommandResult(cmdResult); @@ -164,7 +168,8 @@ Status AuthzManagerExternalStateMongos::getRoleDescriptionsForDB(const std::stri bool AuthzManagerExternalStateMongos::hasAnyPrivilegeDocuments(OperationContext* txn) { BSONObj usersInfoCmd = BSON("usersInfo" << 1); BSONObjBuilder builder; - const bool ok = grid.catalogManager()->runReadCommand("admin", usersInfoCmd, &builder); + const bool ok = + grid.catalogManager()->runUserManagementReadCommand("admin", usersInfoCmd, &builder); if (!ok) { // If we were unable to complete the query, // it's best to assume that there _are_ privilege documents. This might happen |