-
Notifications
You must be signed in to change notification settings - Fork 157
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
Enable retrying flaky tests in nightly CI #4351
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This approach might result in longer nightly runs without really fixing the problem (no guarantee that 2 or 3 or even 5 retries is enough for nightly tests to succeed)
That being said, we can give it a try, since it only affects the nightly runs there is no danger in this.
From what I've observed, the individual test suites fail only occasionally, but when you're running 108 of them the chance of at least one failing is quite high. Rerunning just the failed ones seems to have a good chance of succeeding. (I tried that manually on last night's CI before starting this.) Most of the the individual test suites are fairly quick to execute, so if only a couple are failing it doesn't add much additional time to run them twice. In fact, since there's a lot of suites running in parallel, running a shorter one twice might still finish before the longer ones. |
dbd7762
to
0e255cc
Compare
FYI I took the time to look into what it would take to update the QuickCheck dependency to 2.15 to fix the flaky test in shelley and these are the packages for which you'd need
The thing about this is that the only breaking change in the latest version of QuickCheck is that properties that don't do any random generation are no longer implicitly tested only once. This shouldn't break any of these packages in any significant way (as we aren't using any properties from those packages anyway) so it's up to @lehins if you think it's an acceptable trade-off to introduce these to The QuickCheck bump is on branch https://github.com/IntersectMBO/cardano-ledger/tree/bump-quickcheck but when doing this I discovered a very stupid bug that I introduced in QuickCheck so we're going to have to wait for 2.15.1 anyway. That gives us some more time to wait for the maintainers of the above packages to catch up. |
|
0e255cc
to
4b5d515
Compare
4b5d515
to
a91b4e6
Compare
Nightly tests continue to fail randomly due to an excessive number of discards. Fixing the discards problem will be difficult, but we can work around it for now by retrying test suites that have failed for this specific reason. However, we do this only for nightly CI and not for other workflow runs.