Cache failed PDO and SNMP service probes - #22944
Conversation
TimWolla
left a comment
There was a problem hiding this comment.
Without looking too deeply into it: There is already a SkipCache in the test runner, why doesn't it work?
SkipCache is not actually related. This here actively caches expensive failures across parallel workers so that same following calls do not run into the same timeouts over and over again. |
|
I believe it has the same purpose, but it's less efficient since it doesn't share its state between workers. However it's more general and avoids introducing complexity into individual tests, so if we could improve it, this would be better. We could update |
Extracted from #22917.
Prevents unavailable optional test services from slowing the suite through repeated connection timeouts. PDO and SNMP availability probes cache the first failure for the duration of one test run, so later SKIPIF checks return immediately.
Only failures are cached; successful probes and test connections are unchanged. PDOs one second timeout applies only to the default availability probe. The caches are private, run-scoped and removed afterwards. A service becoming available mid run is detected on the next test-suite run.
Result
Values in seconds; measured on macOS.
-j1-j10Reproduction: