-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: None
-
DevProd Correctness
-
None
-
None
-
None
-
None
-
None
-
None
-
None
I am working on a JavaScript test testing 960 combinations of change stream parameters (and spinning up a sharded cluster twice). After seeing many "Failed to kill cursor" messages in the log, I've added cursor.close() after each use, and the test runtime went from 480 seconds to 150 seconds.
I think the main reason is that I create an instance of ShardingTest and destroy = 'close' it within my JS test, while mongo shell is tracking open cursors and tries to kill them when the cluster is already dead, which results in many unnecessary timeouts.
If there is a problem, perhaps we could fix it globally without adding cursor.close() everywhere (which might still be a good idea). In this case, we know that the processes are dead, so ShardingTest could somehow notify mongo shell in ShardingTest.stop().
Perhaps we can also search for and address other unnecessary timeouts resmoke - based test infrastructure.
- is related to
-
SERVER-95262 Use SIGKILL rather than clean shutdown after a failing test
-
- Closed
-