[SERVER-45022] Refactor and clean up MongoProcessInterface hierarchy Created: 09/Dec/19 Updated: 06/Dec/22 Resolved: 29/Jan/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Aggregation Framework |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Bernard Gorman | Assignee: | Backlog - Query Team (Inactive) |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | qexec-team | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Query
|
||||||||
| Participants: | |||||||||
| Description |
|
The MongoProcessInterface class hierarchy has grown significantly over time, and is now quite unwieldy. The names of the classes and files are misleading and inconsistent (e.g. we have process_interface_standalone, process_interface_shardsvr and mongos_process_interface but no process_interface_repl_node), with much explicitly sharding-related code incongruously located in MongoInterfaceStandalone and some methods which have fundamental assumptions about their callers baked in, which can lead to subtle bugs (see e.g. We should refactor this into a more sensible and generic hierarchy that any code can confidently call. |
| Comments |
| Comment by Charlie Swanson [ 29/Jan/20 ] |
|
bernard.gorman showed this to me and I realized it's a duplicate of |