|
Some FSM workloads leave open cursors (intentionally or otherwise). Open cursors block the range deleter, and this makes the CheckOrphansDeleted hook fail. This has been happening quite often after SERVER-43099 and it's usually time-consuming to debug – the effect of some FSM forgetting a cursor open is that the stopping the balancer times out or the orphan check hook fails.
SERVER-74993 will introduce a dedicated hook to check for leaked cursors that should run before the CheckOrphansDeleted. In the meantime, this ticket is to make sure the FSM worker threads' sessions are killed by the end of the thread. This will close any idle cursors and let the range deleter make progress so that CheckOrphansDeleted can pass.
|