mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-23 01:50:35 +00:00
The usual Scylla shutdown in a cluster test takes ~2.1s. 2s come from ``` co_await sleep(std::chrono::milliseconds(_gcfg.shutdown_announce_ms)); ``` as the default value of `shutdown_announce_in_ms` is 2000. This sleep makes every `server_stop_gracefully` call 2s slower. There are ~300 such calls in cluster tests (note that some come from `rolling_restart`). So, it looks like this sleep makes cluster tests 300 * 2s = 10min slower. Indeed, `./test.py --mode=dev cluster` takes 61min instead of 71min on the potwor machine (the one in the Warsaw office) without it. We set `shutdown_announce_in_ms` to 0 for all cluster tests to make them faster. The sleep is completely unnecessary in tests. Removing it could introduce flakiness, but if that's the case, then the test for which it happens is incorrect in the first place. Tests shouldn't assume that all nodes receive and handle the shutdown message in 2s. They should use functions like `server_not_sees_other_server` instead, which are faster and more reliable. Improvement of the tests running time, so no backport. The fix of `test_tablets_parallel_decommission` may have to be backported to 2026.1, but it can be done manually. Closes scylladb/scylladb#28464 * github.com:scylladb/scylladb: test: pylib: scylla_cluster: set shutdown_announce_in_ms to 0 test: test_tablets_parallel_decommission: prevent group0 majority loss test: delete test_service_levels_work_during_recovery