[SERVER-21333] Remove ShardRegistry::_network Created: 06/Nov/15  Updated: 14/Apr/16  Resolved: 22/Mar/16

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

Type: Improvement Priority: Minor - P4
Reporter: David Storch Assignee: Misha Tyulenev
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates SERVER-23213 Remove all networking operations from... Closed
Backwards Compatibility: Fully Compatible
Participants:

 Description   

The NetworkInterface* may not be needed, and it's uses may be able to be replaced with calls to one of the TaskExecutors owned by the ShardRegistry.



 Comments   
Comment by Andy Schwerin [ 07/Nov/15 ]

The time we can get off the task executor, I believe. Does that help?

Comment by Spencer Brody (Inactive) [ 06/Nov/15 ]

I believe we use the network for 2 things: getting the current time and the current machine's hostname in unittest-mockable ways. If we can make that functionality available elsewhere then we can get rid of the _network

Comment by David Storch [ 06/Nov/15 ]

Yeah, that's still the case. This is just some minor cleanup: right now we hand ownership of one of the NetworkInterfaces off to the TaskExecutor, but the ShardRegistry needs a raw pointer to the NetworkInterface so that it can still be accessed. The cleanup is to avoid keeping the raw pointer since it looks like we may not need it.

Comment by Adam Midvidy [ 06/Nov/15 ]

I recall an issue where a separate network interface was needed for the addShard command as it had to run without the ShardingEgressMetadataHook active. spencer ?

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