[SERVER-14017] Refactor ShardingTest and ReplSetTest objects to use separate control and test connections Created: 21/May/14 Updated: 03/Apr/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | Testing Infrastructure |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Andy Schwerin | Assignee: | Backlog - Server Tooling and Methods (STM) (Inactive) |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | open_todo_in_code, stm, tig-mongorunner | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||
| Assigned Teams: |
Server Tooling & Methods
|
||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||
| Description |
|
Today, the ShardingTest and ReplSetTest objects used for writing integration tests in javascript depend on the same connections to underlying server nodes to do both control operations (stop the balancer before running this test, wait for replication to catch up) and test operations (test behavior of updating documents when the user has these permissions). This is particularly problematic for tests involving authorization, because the control operations should be done with the authority of the super user, while the test operations generally should operate with different privilege. An appropriate solution would be to change the implementation of ShardingTest and ReplSetTest to keep separate control and test channels, and to use the control channels internally for behaviors such as "awaitReplication" and "stopBalancer". |
| Comments |
| Comment by Steven Vannelli [ 10/May/22 ] |
|
Moving this ticket to the Backlog and removing the "Backlog" fixVersion as per our latest policy for using fixVersions. |