[SERVER-23215] Make a ShardClient interface with 3 implementations: local, remote, mock Created: 17/Mar/16  Updated: 14/Apr/16  Resolved: 14/Apr/16

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Esha Maharishi (Inactive) Assignee: Esha Maharishi (Inactive)
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates SERVER-23495 Add abstract Shard class and shift th... Closed
Sprint: Sharding 13 (04/22/16)
Participants:

 Description   

The interface should eventually consist of CRUD operations and runCommand, but initially only needs the methods required for addShard. The rest can be added as we need them.

a. The remote implementation should use the network interface, similarly to how ShardRegistry::_runCommandWithMetadata and ShardRegistry::_exhaustiveFindOnConfig used to work

b. The local implementation should use the new dbhelpers being written

c. The mock implementation can be used for testing the ShardingCatalogManager

The remote implementation can itself be unit tested using a mock network interface, and the local implementation can be unit tested using the ephemeralForTest storage engine.


Generated at Thu Feb 08 04:02:43 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.