diff options
author | Randolph Tan <randolph@10gen.com> | 2017-03-09 10:54:04 -0500 |
---|---|---|
committer | Randolph Tan <randolph@10gen.com> | 2017-03-10 13:11:07 -0500 |
commit | a067d77c06242aed80ccbf9e6d03b6a054849ffa (patch) | |
tree | b94ac2388db6989316893a82d0e361420e800ec3 /src/mongo/s/sharding_egress_metadata_hook.h | |
parent | d2c44fd6ccdeab0590f8fe2413c84c2467f2b60e (diff) | |
download | mongo-a067d77c06242aed80ccbf9e6d03b6a054849ffa.tar.gz |
Revert "Revert "SERVER-27750 Attach LogicalTimeMetadata to globalConnPool and shardConnectionPool""
This reverts commit 4e2cb91ed1fe8a9a8caead72a7f0bd56b2ba28d1.
Diffstat (limited to 'src/mongo/s/sharding_egress_metadata_hook.h')
-rw-r--r-- | src/mongo/s/sharding_egress_metadata_hook.h | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/src/mongo/s/sharding_egress_metadata_hook.h b/src/mongo/s/sharding_egress_metadata_hook.h index 1c8849dcea3..87442ebe0f3 100644 --- a/src/mongo/s/sharding_egress_metadata_hook.h +++ b/src/mongo/s/sharding_egress_metadata_hook.h @@ -43,23 +43,14 @@ namespace rpc { class ShardingEgressMetadataHook : public rpc::EgressMetadataHook { public: + /** + * Pass true to shardedConnection if the hook is intended for connections with shard versions. + */ + ShardingEgressMetadataHook(bool shardedConnection); virtual ~ShardingEgressMetadataHook() = default; - Status readReplyMetadata(const HostAndPort& replySource, const BSONObj& metadataObj) override; - Status writeRequestMetadata(OperationContext* opCtx, - const HostAndPort& target, - BSONObjBuilder* metadataBob) override; - - // These overloaded methods exist to allow ShardingConnectionHook, which is soon to be - // deprecated, to use the logic in ShardingEgressMetadataHook instead of duplicating the - // logic. ShardingConnectionHook must provide the replySource and target as strings rather than - // HostAndPorts, since DBClientReplicaSet uses the hook before it decides on the actual host to - // contact. - Status readReplyMetadata(const StringData replySource, const BSONObj& metadataObj); - Status writeRequestMetadata(bool shardedConnection, - OperationContext* opCtx, - const StringData target, - BSONObjBuilder* metadataBob); + Status readReplyMetadata(StringData replySource, const BSONObj& metadataObj) override; + Status writeRequestMetadata(OperationContext* opCtx, BSONObjBuilder* metadataBob) override; protected: /** @@ -83,6 +74,9 @@ protected: * metadata in the response object from running a command. */ virtual Status _advanceConfigOptimeFromShard(ShardId shardId, const BSONObj& metadataObj); + +private: + bool _isShardedConnection; }; } // namespace rpc |