ctest --test-load is broken in CMake 3.11.2
"ctest --test-load X" no longer waits for the load average to fall below X before starting a new test. Instead it gives up immediately. I tested this on Fedora 28 using the distro provided cmake 3.11.2. Using the following approach:
- Start "ctest --test-load 3" on a project where tests are slow enough to take long enough for this experiment
- Create an artificial load. I just ran "while true; do echo foo; done" in 4 other shells
When the loadavg reaches 3 ctest stops immediately after printing
***** WAITING, System Load: 3, Max Allowed Load: 3, Smallest test vdbclient-test requires 1*****
I ran the same experiment with ctest from 3.10.3 and it waits nicely:
***** WAITING, System Load: 3, Max Allowed Load: 3, Smallest test evncserver-test requires 1*****
***** WAITING, System Load: 3, Max Allowed Load: 3, Smallest test evncserver-test requires 1*****
***** WAITING, System Load: 3, Max Allowed Load: 3, Smallest test evncserver-test requires 1*****
***** WAITING, System Load: 3, Max Allowed Load: 3, Smallest test evncserver-test requires 1*****
***** WAITING, System Load: 3, Max Allowed Load: 3, Smallest test evncserver-test requires 1*****
***** WAITING, System Load: 4, Max Allowed Load: 3, Smallest test evncserver-test requires 1*****
The exact ctest command I used: ctest --output-on-failure --timeout 1800 -j 3 --test-load 3"