-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
-
ALL
-
Sharding EMEA 2023-02-20, Sharding EMEA 2023-03-06
Oplog entries can be re-applied during a rollback, which means that functions related to sharding's index catalog must be idempotent, and most check the latest index version before doing anything.
Most functions have this check, except replace. The purpose of this ticket is to add the check for replace.
Additionally, the shard server op observer in-memory changes for the index catalog currently can be executed during recovery, which makes it hard to reason about the observers actions overall. We could add a check to prevent them doing anything if we are in recovery, and let the sharding recovery service to handle the in-memory state.