-
Type: Task
-
Resolution: Won't Fix
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Replication
-
Labels:None
-
Replication
-
Fully Compatible
If there is a restart during Phase 2, we should be able to restart the rollback process and skip Phase 1.
The information in local.system.rollback.progress should be sufficient to determine if Phase 1 can be skipped.
The entry point to Phase 2 would be in BackgroundSync right before we start to look for a new sync source.
We would enter rollback and return to the producer loop when rollback completes.
To test this feature, we would need a JS test and a fail point:
The fail point would make the server hang in Phase 2, at which point the JS test could restart the node.