-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Optimization
-
Fully Compatible
-
ALL
-
200
-
None
-
None
-
None
-
None
-
None
-
None
-
None
magic_restore_higher_term.js intermittently fails with the magic-restore mongod aborting via fassert(12595915) in ReplicationCoordinatorDisaggregatedStorage::_kickOffMagicRestore(). At the JS level this surfaces as assert.soon failed: "Expected magic restore to exit mongod cleanly" followed by the hang analyzer, because the test polls for a clean exit that never comes after the abort.
Root cause. At the end of a disagg point-in-time restore, we reconcile the log server's term by appending a final no-op "new primary" oplog entry (LogServerManager::magicRestoreFinalizeTermAppendLog). Before this append, the caller drains the oplog provider and stops the state machine, which cancels the primary
loop's AppendLog stream. Scenario B (checkpoint-only) is most exposed because it applies no oplog entries, so the finalize runs immediately after step-up, exactly when the step-up phylog entry is still in flight.