[SERVER-43109] Explicitly state nodes in awaitReplication in do_not_advance_commit_point_beyond_last_applied_term.js Created: 30/Aug/19 Updated: 29/Oct/23 Resolved: 09/Sep/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | 3.6.15 |
| Fix Version/s: | 3.6.15 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Jason Chan | Assignee: | Jason Chan |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Operating System: | ALL | ||||||||||||
| Sprint: | Repl 2019-09-09 | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 50 | ||||||||||||
| Description |
|
In 3.6, awaitReplication calls isMaster on all nodes and then adds them into liveNodes if isMaster is successful. In the case for do_not_advance_commit_point_beyond_last_applied.js, a node can still be in rollback and fail the isMaster call, which means awaitReplication will ignore that node when waiting for the opTimes. We should instead pass the list of nodes we explictly want to wait for into awaitReplication so the node will complete rollback before we begin querying on it. This is fixed on v4.0 and onwards thanks to this line here. |
| Comments |
| Comment by Githook User [ 09/Sep/19 ] |
|
Author: {'name': 'Jason Chan', 'username': 'jasonjhchan', 'email': 'jason.chan@10gen.com'}Message: |