-
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
ZTS: Improve redundancy/* test scripts #11906
Merged
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
force-pushed
the
zts-redundancy
branch
from
April 16, 2021 18:00
3cd95c1
to
4dec349
Compare
gmelikov
approved these changes
Apr 16, 2021
behlendorf
force-pushed
the
zts-redundancy
branch
3 times, most recently
from
April 18, 2021 23:00
998c5ec
to
b10bccb
Compare
behlendorf
added
Status: Accepted
Ready to integrate (reviewed, tested)
and removed
Status: Work in Progress
Not yet ready for general review
labels
Apr 19, 2021
- Add additional logging to provide more information about why the test failed. This including logging more of the individual commands and the contents and differences of the record files on failure. - Updated get_vdevs() to properly exclude all top-level vdevs including raidz3 and draid[1-3]. - Replaced gnudd with dd. This is the only remaining place in the test suite gnudd is used and it shouldn't be needed. - The refill_test_env function expects the pool as the first argument but never sets the pool variable. - Only fill the test pools to 50% of capacity instead of 75% to help speed up the tests. - Fix replace_missing_devs() calculation, MINDEVSIZE should be MINVDEVSIZE. - Fix damage_devs() so it overwrites almost all of the device so we're guaranteed to damage filesystem blocks. - redundancy_stripe.ksh should not use log_mustnot to check if the pool is healthy since the return value may be misinterpreted. Just perform a normal conditional check and log the failure. Reviewed-by: George Melikov <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes openzfs#11906
behlendorf
force-pushed
the
zts-redundancy
branch
from
April 19, 2021 04:24
b10bccb
to
d8b4de0
Compare
behlendorf
added a commit
to behlendorf/zfs
that referenced
this pull request
Apr 21, 2021
- Add additional logging to provide more information about why the test failed. This including logging more of the individual commands and the contents and differences of the record files on failure. - Updated get_vdevs() to properly exclude all top-level vdevs including raidz3 and draid[1-3]. - Replaced gnudd with dd. This is the only remaining place in the test suite gnudd is used and it shouldn't be needed. - The refill_test_env function expects the pool as the first argument but never sets the pool variable. - Only fill the test pools to 50% of capacity instead of 75% to help speed up the tests. - Fix replace_missing_devs() calculation, MINDEVSIZE should be MINVDEVSIZE. - Fix damage_devs() so it overwrites almost all of the device so we're guaranteed to damage filesystem blocks. - redundancy_stripe.ksh should not use log_mustnot to check if the pool is healthy since the return value may be misinterpreted. Just perform a normal conditional check and log the failure. Reviewed-by: George Melikov <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes openzfs#11906
sempervictus
pushed a commit
to sempervictus/zfs
that referenced
this pull request
May 31, 2021
- Add additional logging to provide more information about why the test failed. This including logging more of the individual commands and the contents and differences of the record files on failure. - Updated get_vdevs() to properly exclude all top-level vdevs including raidz3 and draid[1-3]. - Replaced gnudd with dd. This is the only remaining place in the test suite gnudd is used and it shouldn't be needed. - The refill_test_env function expects the pool as the first argument but never sets the pool variable. - Only fill the test pools to 50% of capacity instead of 75% to help speed up the tests. - Fix replace_missing_devs() calculation, MINDEVSIZE should be MINVDEVSIZE. - Fix damage_devs() so it overwrites almost all of the device so we're guaranteed to damage filesystem blocks. - redundancy_stripe.ksh should not use log_mustnot to check if the pool is healthy since the return value may be misinterpreted. Just perform a normal conditional check and log the failure. Reviewed-by: George Melikov <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes openzfs#11906
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
The
redundancy_draid3
test case occasionally fails in the CIbut it's unclear why, and I haven't been able to reproduce the
issue locally. This PR leverages the CI to see if we can either
reproduce the issue, or if the small fixes in this PR resolve the
issue which is possible.
http://build.zfsonlinux.org/builders/FreeBSD%20stable%2F13%20amd64%20%28TEST%29/builds/215
Description
Add additional logging to provide more information about why the
test failed. This including logging more of the individual commands
and the contents and differences of the record files on failure.
Updated get_vdevs() to properly exclude all top-level vdevs
including raidz3 and draid[1-3].
Replaced gnudd with dd. This is the only remaining place in the
test suite gnudd is used and it shouldn't be needed.
How Has This Been Tested?
Locally ran the updated tests but I was unable to reproduce the
issue. This PR leverages the CI to run the redundancy tests 100
times per builder to see if it can reproduce the issue.
Types of changes
Checklist:
Signed-off-by
.