-
Notifications
You must be signed in to change notification settings - Fork 273
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
Random Testing on main and version branches #245
Comments
I'm a little worried that we are trying to include this in scope for 1.1, given that we're still not running any bundle tests (integ, perf, bcw) daily. Definitely can come next after those. |
This is independent of any release. We don't have any random test coverage leading to PRs as the first (and only) line of defense for catching random seeded failures. We can't continue as a project like this. We need random testing on main, 1.x, (and 1.1 when we cut the branch) so we have adequate test coverage for "corner cases". |
Case in point:
I was able to reproduce this test failure on all three branches (including 1.0 release branch). Which means it was introduced sometime back before 1.0 GA. It was only just now caught because of the version bump PR. Random testing should've caught this far earlier than a PR. |
[Triage] @nknize do you have an approach of how this testing would be conducted - could this be done in a GHA or does this need support for a new kind of execution / reporting? |
I was originally thinking like a temporal trigger (say every 4/6 hours or so; 4 times a day)? Perhaps that's too often? Maybe we run it twice a day? I would say we could be more conservative and set it up as an intake check (e.g., every merge)? But we don't have enough merged contributions for that to give the coverage needed, so maybe a 2/4 times a day random testing is good until we have a lot of merge activity and we switch to an intake check? |
Could these tests be run in GHA? It supports cron syntax as we use it in this repository. |
There's just not enough hardware in GHA IMO, and Jenkins can do cron just fine too. |
Added randomized test to gradle check, every 12 hours we will run gradle check against head of 1.x and main. |
Where's the PR/comit/doc for this @peterzhuamazon ? |
Success with Issue creation on OpenSearch repo: |
More actions after talking to DB:
|
[Triage] Many concerns of this task will be resolved when Jenkins in public opensearch-project/opensearch-ci#3, we will be prioritize that work first afterward this can be reopened if it comes up. |
OpenSearch org needs random testing on the main and supported unreleased minor version branches (e.g., 1x). Without it, PRs bear the burden of finding corner case bugs introduced in merged features.
This just occurred in opensearch-project/OpenSearch#1073 where SimpleFS deprecation PR failed twice w/ a corner case bug not caught in the original PR. Without random testing to catch corner cases like this the project is at the mercy of the law of large numbers where situations like these will occur more frequently and very few PR checks will succeed.
Outstanding tasks:
The text was updated successfully, but these errors were encountered: