diff options
author | Dianna Hohensee <dianna.hohensee@10gen.com> | 2016-10-18 09:43:11 -0400 |
---|---|---|
committer | Dianna Hohensee <dianna.hohensee@10gen.com> | 2016-10-28 14:08:04 -0400 |
commit | 53efde3280dd6a880987150777f5a26143df59e1 (patch) | |
tree | 19584f4fd8fb7456faa20ae74fda84218e9eb676 /src/mongo/s/client/shard.h | |
parent | 910ad1d9ea6462b847f1432f041bbf68b2cffa8d (diff) | |
download | mongo-53efde3280dd6a880987150777f5a26143df59e1.tar.gz |
SERVER-25999 add list of error codes to Shard that can be used to determine whether remote command errors should be propogated further back to other servers
Diffstat (limited to 'src/mongo/s/client/shard.h')
-rw-r--r-- | src/mongo/s/client/shard.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mongo/s/client/shard.h b/src/mongo/s/client/shard.h index 723a66d8ca9..26413b61c6d 100644 --- a/src/mongo/s/client/shard.h +++ b/src/mongo/s/client/shard.h @@ -223,6 +223,14 @@ public: // explicitly overridden static const Milliseconds kDefaultConfigCommandTimeout; + /** + * Returns false if the error is a retriable error and/or causes a replset monitor update. These + * errors, if from a remote call, should not be further propagated back to another server + * because that server will interpret them as orignating on this server rather than the one this + * server called. + */ + static bool shouldErrorBePropagated(ErrorCodes::Error code); + protected: struct HostWithResponse { HostWithResponse(boost::optional<HostAndPort> _host, |