diff options
author | Andy Schwerin <schwerin@10gen.com> | 2013-10-25 18:15:23 -0400 |
---|---|---|
committer | Andy Schwerin <schwerin@10gen.com> | 2013-10-25 18:15:23 -0400 |
commit | 774860337ea71d1f8b4711971dc9fa61115cd003 (patch) | |
tree | 221abb74c9c050ab62399028d966c2cdec8fc311 /src/mongo/db/auth/authz_manager_external_state_d.cpp | |
parent | ff9f15747c7f9e3d20436a66b2d90384e06fd4f2 (diff) | |
download | mongo-774860337ea71d1f8b4711971dc9fa61115cd003.tar.gz |
Revert "SERVER-9516 Write version document to admin.system.version as needed in mongod."
This reverts commit 3d61067308f7f526ec00d79bcbb158d31fd413fa, which breaks multi-version
because it replicates writes to admin.system.version at startup.
Diffstat (limited to 'src/mongo/db/auth/authz_manager_external_state_d.cpp')
-rw-r--r-- | src/mongo/db/auth/authz_manager_external_state_d.cpp | 35 |
1 files changed, 2 insertions, 33 deletions
diff --git a/src/mongo/db/auth/authz_manager_external_state_d.cpp b/src/mongo/db/auth/authz_manager_external_state_d.cpp index 808ea32ba04..99c61c95fb4 100644 --- a/src/mongo/db/auth/authz_manager_external_state_d.cpp +++ b/src/mongo/db/auth/authz_manager_external_state_d.cpp @@ -108,45 +108,14 @@ namespace { } } // namespace - void AuthzManagerExternalStateMongod::writeAuthSchemaVersionDocumentIfNeeded() { - Client::WriteContext ctx(AuthorizationManager::versionCollectionNamespace.ns()); - BSONObj ignored; - if (Helpers::findOne(AuthorizationManager::versionCollectionNamespace.ns(), - AuthorizationManager::versionDocumentQuery, - ignored)) { - return; - } - - const bool hasPrivDocs = Helpers::findOne( - AuthorizationManager::usersCollectionNamespace.ns(), BSONObj(), ignored); - const int version = hasPrivDocs ? - AuthorizationManager::schemaVersion24 : - AuthorizationManager::schemaVersion26Final; - - DBDirectClient client; - BSONObjBuilder versionDocBuilder; - versionDocBuilder.appendElements(AuthorizationManager::versionDocumentQuery); - versionDocBuilder.append(AuthorizationManager::schemaVersionFieldName, version); - BSONObj versionDoc = versionDocBuilder.done(); - client.insert(AuthorizationManager::versionCollectionNamespace.ns(), versionDoc); - std::string err = client.getLastError( - AuthorizationManager::versionCollectionNamespace.db().toString()); - if (!err.empty()) { - warning() << "Failed to write auth schema version document " << versionDoc << - " to " << AuthorizationManager::versionCollectionNamespace.ns() << ": " << - err; - } - } - Status AuthzManagerExternalStateMongod::getStoredAuthorizationVersion(int* outVersion) { { Client::ReadContext ctx(AuthorizationManager::versionCollectionNamespace.ns()); BSONObj versionDoc; if (Helpers::findOne(AuthorizationManager::versionCollectionNamespace.ns(), - AuthorizationManager::versionDocumentQuery, + BSON("_id" << 1), versionDoc)) { - BSONElement versionElement = versionDoc[ - AuthorizationManager::schemaVersionFieldName]; + BSONElement versionElement = versionDoc["currentVersion"]; if (versionElement.isNumber()) { *outVersion = versionElement.numberInt(); return Status::OK(); |