-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Add zfs-test facility to automatically rerun failing tests #12740
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
behlendorf
added
Component: Test Suite
Indicates an issue with the test framework or a test case
Status: Code Review Needed
Ready for review and testing
labels
Nov 9, 2021
pcd1193182
force-pushed
the
rerunning
branch
from
November 10, 2021 00:16
4577770
to
9399f54
Compare
pcd1193182
force-pushed
the
rerunning
branch
from
November 10, 2021 21:27
bf14173
to
ce627f2
Compare
behlendorf
reviewed
Nov 11, 2021
jwk404
approved these changes
Nov 17, 2021
Signed-off-by: Paul Dagnelie <pcd@delphix.com>
pcd1193182
force-pushed
the
rerunning
branch
from
November 17, 2021 18:17
c2c107a
to
134d2c6
Compare
tonynguien
approved these changes
Dec 1, 2021
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.
Looks good to me. Good stuff!
behlendorf
added
Status: Accepted
Ready to integrate (reviewed, tested)
and removed
Status: Code Review Needed
Ready for review and testing
labels
Dec 1, 2021
tonyhutter
pushed a commit
to tonyhutter/zfs
that referenced
this pull request
Dec 6, 2021
This was a project proposed as part of the Quality theme for the hackthon for the 2021 OpenZFS Developer Summit. The idea is to improve the usability of the automated tests that get run when a PR is created by having failing tests automatically rerun in order to make flaky tests less impactful. Reviewed-by: John Kennedy <john.kennedy@delphix.com> Reviewed-by: Tony Nguyen <tony.nguyen@delphix.com> Signed-off-by: Paul Dagnelie <pcd@delphix.com> Closes openzfs#12740
tonyhutter
pushed a commit
to tonyhutter/zfs
that referenced
this pull request
Dec 6, 2021
This was a project proposed as part of the Quality theme for the hackthon for the 2021 OpenZFS Developer Summit. The idea is to improve the usability of the automated tests that get run when a PR is created by having failing tests automatically rerun in order to make flaky tests less impactful. Reviewed-by: John Kennedy <john.kennedy@delphix.com> Reviewed-by: Tony Nguyen <tony.nguyen@delphix.com> Signed-off-by: Paul Dagnelie <pcd@delphix.com> Closes openzfs#12740
nicman23
pushed a commit
to nicman23/zfs
that referenced
this pull request
Aug 22, 2022
This was a project proposed as part of the Quality theme for the hackthon for the 2021 OpenZFS Developer Summit. The idea is to improve the usability of the automated tests that get run when a PR is created by having failing tests automatically rerun in order to make flaky tests less impactful. Reviewed-by: John Kennedy <john.kennedy@delphix.com> Reviewed-by: Tony Nguyen <tony.nguyen@delphix.com> Signed-off-by: Paul Dagnelie <pcd@delphix.com> Closes openzfs#12740
nicman23
pushed a commit
to nicman23/zfs
that referenced
this pull request
Aug 22, 2022
This was a project proposed as part of the Quality theme for the hackthon for the 2021 OpenZFS Developer Summit. The idea is to improve the usability of the automated tests that get run when a PR is created by having failing tests automatically rerun in order to make flaky tests less impactful. Reviewed-by: John Kennedy <john.kennedy@delphix.com> Reviewed-by: Tony Nguyen <tony.nguyen@delphix.com> Signed-off-by: Paul Dagnelie <pcd@delphix.com> Closes openzfs#12740
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Component: Test Suite
Indicates an issue with the test framework or a test case
Status: Accepted
Ready to integrate (reviewed, tested)
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation and Context
This was a project proposed as part of the Quality theme for the hackthon for the 2021 OpenZFS Developer Summit. The idea is to improve the usability of the automated tests that get run when a PR is created by having failing tests automatically rerun in order to make flaky tests less impactful.
Description
This started a port of the Illumos commit
13365 Add option to testrunner to re-run just failed tests
. That commit contains the basic infrastructure in test-runner.py to filter a list of tests down to only include ones that failed in some previous logfile.There are changes to
zts-report.py.in
to print the list of tests on themaybe
list, which are the flaky ones. There's also the option to do the report as usual, but change the return code to a different value if all failures were on the maybe or known failure lists.There are changes to
zfs-tests.sh
, which are what actually triggers rerunning the failing tests. If the rerun flag is passed, and the report indicates that all test failures were known failures or flaky tests, then we isolate the failed flaky tests and rerun them.There are also changes to the github workflows to use the new option. This is a slightly different interface than the one they elected to use in Illumos; they added a
-l
flag that allows a logfile to be passed when you rerun the zfs-tests command. I elected to go with this approach as it was more ergonomic for the automation use case, though the-l
option can also be added if needed.How Has This Been Tested?
Local runs of zfs-test did automatically rerun the failing tests when the option was provided, and behaved as usual when it was omitted.
Types of changes
Checklist:
Signed-off-by
.