-
Type: Task
-
Resolution: Won't Fix
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Labels:None
-
Replication
-
(copied to CRM)
The current secondary behavior is that we will apply events until we have caught up to our sync source, at which point we will decide to switch sync sources if our current sync source is not primary and does not have a sync source. However, if our sync source was previously the primary and continued to apply writes, it may have advanced past the new primary, which means that we will into rollback when we change sync sources.
We should investigate potential ways to prevent this rollback, to lower the likelihood that we will go into rollback following network errors. One avenue to consider is checking the repl metadatas of both the new and old primary when changing sync sources. It is also reasonable to determine that this improvement is not worth the complexity that it would add.