[SERVER-80809] Make _logOplogEntriesForInvalidResults resilient to non-existing oplog Created: 06/Sep/23 Updated: 29/Oct/23 Resolved: 07/Sep/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.2.0-rc0, 5.0.22, 7.0.3, 6.0.12 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Yujin Kang Park | Assignee: | Benety Goh |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Assigned Teams: |
Storage Execution
|
||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||
| Backport Requested: |
v7.1, v7.0, v6.0, v5.0
|
||||||||||||||||
| Sprint: | Execution NAMR Team 2023-09-18 | ||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
_logOplogEntriesForInvalidResults does not check if the oplog pointer is valid. One case where this could happen was when running validate on a replica set member started as standalone. Even though the oplog existed, AutoGetOplog returned nullptr. This is being handled in The other possibility is that the oplog doesn't actually exist because the node has always been standalone. We should check if it is possible to hit this code with timestamps in recordTimestamps (passing this check) in this case, and if so make the code resilient. |
| Comments |
| Comment by Githook User [ 16/Oct/23 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: |
| Comment by Githook User [ 16/Oct/23 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: |
| Comment by Githook User [ 16/Oct/23 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: |
| Comment by Githook User [ 07/Sep/23 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: |