|Jeremy Hylton : weblog : 2003-10-16|
Thursday, October 16, 2003
Why do tests run from my nightly cron jobs run so much more slowly than when I run them manually? I'll be it's the screensaver, which is now just configured to blank the screen.
I run several batches of ZODB and ZRS tests every night. The tests spawn ZEO server processes, interact with them, then clean them up. There are a bunch of ad hoc timeouts intended to prevent the tests from hanging indefinitely if something goes wrong. If the test runs very slowly, they'll timeout even though they are making progress. There are also multi-threaded tests that try to run until each thread makes a certain amount of progress -- again with a timeout to guard against deadlock.
The nightly cron jobs were much more likely to fail because of timeouts. We've spent several weeks trying to figure out why the tests fail so often and have boosted several timeouts as a result.
Tim remembered that he had a problem with his screensaver at Dragon. His tests ran three times slower overnight and it took him a once to figure out that it was the 3D pipes screensaver in Windows.