diff options
author | Esha Maharishi <esha.maharishi@mongodb.com> | 2016-03-29 12:31:34 -0400 |
---|---|---|
committer | Esha Maharishi <esha.maharishi@mongodb.com> | 2016-05-09 13:04:24 -0400 |
commit | d1957fd1f86510c37a893ec3c51140cf004407d5 (patch) | |
tree | bf2c3b3ada88ca6e3f8ec4335eb2c2559b210eeb /src/mongo/s/dbclient_shard_resolver.h | |
parent | 09701a3de6f617a69e3c6368d517771d68febb2b (diff) | |
download | mongo-d1957fd1f86510c37a893ec3c51140cf004407d5.tar.gz |
SERVER-23336 replace ShardResolver with RemoteCommandTargeter::findHost
Diffstat (limited to 'src/mongo/s/dbclient_shard_resolver.h')
-rw-r--r-- | src/mongo/s/dbclient_shard_resolver.h | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/src/mongo/s/dbclient_shard_resolver.h b/src/mongo/s/dbclient_shard_resolver.h deleted file mode 100644 index ba70bdf1dc3..00000000000 --- a/src/mongo/s/dbclient_shard_resolver.h +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Copyright (C) 2013 MongoDB Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - * As a special exception, the copyright holders give permission to link the - * code of portions of this program with the OpenSSL library under certain - * conditions as described in each individual source file and distribute - * linked combinations including the program with the OpenSSL library. You - * must comply with the GNU Affero General Public License in all respects for - * all of the code used other than as permitted herein. If you modify file(s) - * with this exception, you may extend this exception to your version of the - * file(s), but you are not obligated to do so. If you do not wish to do so, - * delete this exception statement from your version. If you delete this - * exception statement from all source files in the program, then also delete - * it in the license file. - */ - -#pragma once - -#include "mongo/s/shard_resolver.h" - -namespace mongo { - -/** - * ShardResolver based on the Shard and ReplicaSetMonitor caches. - * - * TODO: Currently it's possible for the shard resolver to be stale after we target and remove - * a shard. We need to figure out how to refresh. - */ -class DBClientShardResolver : public ShardResolver { -public: - DBClientShardResolver() {} - - virtual ~DBClientShardResolver() {} - - /** - * Returns the current host ConnectionString for a write to a shard. - * - * Note: Does *not* trigger a refresh of either the shard or replica set monitor caches, - * though refreshes may happen unexpectedly between calls. - * - * Returns ShardNotFound if the shard name is unknown - * Returns ReplicaSetNotFound if the replica set is not being tracked - * Returns !OK with message if the shard host could not be found for other reasons. - */ - Status chooseWriteHost(OperationContext* txn, - const std::string& shardName, - ConnectionString* shardHost) const override; - - /** - * Resolves a replica set connection string to a master or returns an error. - * - * Returns HostNotFound if the master is not reachable - * Returns ReplicaSetNotFound if the replica set is not being tracked - */ - static Status findMaster(const ConnectionString& connString, ConnectionString* resolvedHost); -}; - -} // namespace mongo |