-
Notifications
You must be signed in to change notification settings - Fork 2.6k
0.32.0 resolving_with_many_equivalent_backtracking fails on mips #6491
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Is there some way for me to experiment on that system? Does it happen reliably or only sometimes? Is it possible that the hardware in question is just very slow? The assertion that fired is a smoke test, that just checks if the wall time is less than 60 sec. On our CI set up that test at most takes 30 sec. but it is possible that everything is working correctly just slowly. Sorry this test is giving you trouble. |
Ah, thanks very much for the context. Our mips machines (and I think those in general) are indeed pretty slow - 2-3 hours on average to build cargo, vs 15 minutes on amd64. I will experiment with simply increasing the timeout, hopefully these failures go away. |
Without certain optimizations I would be up to adding a ENV variable to control the time out, if it fixes your problems. |
Bumping up the duration from 60 to 240 seems to have worked, but we get another failure - I see the timeout duration there is 30, so I'll bump it up to 120. Perhaps cargo can adopt these numbers? Alternatively, a nice way to make this "more obvious" for future people is to add a multiplier in each case, so that it can be raised for certain architectures that are mostly represented by slow machines like mips. |
For clarity, the full patch is: --- a/tests/testsuite/support/resolver.rs
+++ b/tests/testsuite/support/resolver.rs
@@ -118,7 +118,7 @@
// The largest test in our suite takes less then 30 sec.
// So lets fail the test if we have ben running for two long.
- assert!(start.elapsed() < Duration::from_secs(60));
+ assert!(start.elapsed() < Duration::from_secs(240));
resolve
}
--- a/tests/testsuite/concurrent.rs
+++ b/tests/testsuite/concurrent.rs
@@ -511,7 +511,7 @@
}
for _ in 0..n_concurrent_builds {
- let result = rx.recv_timeout(Duration::from_secs(30)).expect("Deadlock!");
+ let result = rx.recv_timeout(Duration::from_secs(120)).expect("Deadlock!");
execs().run_output(&result);
}
} |
I like the "multiplier". PR #6596. I also used greped for |
Some CI setups are much slower then the equipment used by Cargo itself This adds a "CARGO_TEST_SLOW_CPU_MULTIPLIER" that increases all the time outs used in the tests, and disables Proptest shrinking on non tty cases. Closes: #6491 CC: #6490, @infinity0
The text was updated successfully, but these errors were encountered: