-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Replication
-
Fully Compatible
-
Repl 2024-05-13
In the replication arch guide's read preference section, we imply that sending `primary` read preference operations to a secondary should always fail. There are small edge cases where this is not true — ever since lock-free reads, state transitions happen independently from read operations. It's possible that a primary receives an operation with `primary` read preference, validates the preference state combo, and then steps down while the read is executing. We should amend the replication arch guide to clarify that the read preference selection is best-effort when combined with state changes.
There is also a formatting error with a link for `secondaryAllowed` that we should fix.