[SERVER-79850] Abstract out similar code between data consistency/extra index keys check and make error handling consistent Created: 08/Aug/23  Updated: 07/Feb/24

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

Type: Task Priority: Major - P3
Reporter: Huayu Ouyang Assignee: Xuerui Fa
Resolution: Unresolved Votes: 0
Labels: pm-855-milestone-3
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Assigned Teams:
Replication
Sprint: Repl 2024-02-19
Participants:
Linked BF Score: 6

 Description   

We should abstract out similar code between data consistency/extra index keys check, including error handling (for things like checking for stepdown, ErrorCodes::LockTimeout, adding handling for retryable errors in extra index keyds check)

As part of this we should refactor the code to only check for the IndexNotFound/NamespaceNotFound/CommandNotSupportedOnView errors in one place/propogate it all up to one location, since right now in the extra index keys path we check for IndexNotFound in many locations.

We should also make sure that all the IndexNotFound checks are correct (in dbcheck_extra_index_keys.js)


Generated at Thu Feb 08 06:42:04 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.