-
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
Test Compression Algorithm Selection Refactor #9645
Conversation
@c0d3z3r0 @behlendorf |
23dd980
to
c68580f
Compare
c68580f
to
3b704c6
Compare
edit to description I manually checked all edited tests to make sure they actually got the compression algorithms referenced. Also nice to note for review: So this reference style is not new, it just unifies different reference styles. |
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.
LGTM besides some nitpicks
tests/zfs-tests/tests/functional/nopwrite/nopwrite_varying_compression.ksh
Outdated
Show resolved
Hide resolved
tests/zfs-tests/tests/functional/compression/compress_004_pos.ksh
Outdated
Show resolved
Hide resolved
tests/zfs-tests/tests/functional/compression/compress_004_pos.ksh
Outdated
Show resolved
Hide resolved
tests/zfs-tests/tests/functional/compression/compress_003_pos.ksh
Outdated
Show resolved
Hide resolved
tests/zfs-tests/tests/functional/compression/compress_003_pos.ksh
Outdated
Show resolved
Hide resolved
tests/zfs-tests/tests/functional/cli_root/zfs_set/property_alias_001_pos.ksh
Outdated
Show resolved
Hide resolved
tests/zfs-tests/tests/functional/cli_root/zfs_set/property_alias_001_pos.ksh
Outdated
Show resolved
Hide resolved
tests/zfs-tests/tests/functional/rsend/send_realloc_encrypted_files.ksh
Outdated
Show resolved
Hide resolved
3b704c6
to
b3f7e67
Compare
tests/zfs-tests/tests/functional/compression/compress_004_pos.ksh
Outdated
Show resolved
Hide resolved
b3f7e67
to
1738504
Compare
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.
When giving this one last look a noticed a cosmetic style issue which cstyle
appears to have missed. Aside from that, looks good.
tests/zfs-tests/tests/functional/rsend/send_realloc_encrypted_files.ksh
Outdated
Show resolved
Hide resolved
Codecov Report
@@ Coverage Diff @@
## master #9645 +/- ##
==========================================
- Coverage 79.32% 79.17% -0.15%
==========================================
Files 418 418
Lines 123562 123531 -31
==========================================
- Hits 98010 97807 -203
- Misses 25552 25724 +172
Continue to review full report at Codecov.
|
- Moves compression algorithms for tests to properties.shlib - Removes all compression algorithms levels from general tests - Replaces on with lz4 for compression tests - Removes random algorithm selection, if not needed - Cleans copyright header formating Signed-off-by: Kjeld Schouten-Lebbing <[email protected]>
a7e3e5f
to
0574409
Compare
@behlendorf |
This sets send_realloc_files.ksh to use properties.shlib (like the other compression related tests) It was missing from openzfs#9645 Signed-off-by: Kjeld Schouten-Lebbing <[email protected]>
This sets send_realloc_files.ksh to use properties.shlib (like the other compression related tests) It was missing from openzfs#9645 Signed-off-by: Kjeld Schouten-Lebbing <[email protected]>
This sets send_realloc_files.ksh to use properties.shlib (like the other compression related tests) It was missing from #9645 Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Kjeld Schouten-Lebbing <[email protected]> Issue #9645 Closes #9679
This sets send_realloc_files.ksh to use properties.shlib (like the other compression related tests) It was missing from openzfs#9645 Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Kjeld Schouten-Lebbing <[email protected]> Issue openzfs#9645 Closes openzfs#9679
This sets send_realloc_files.ksh to use properties.shlib (like the other compression related tests) It was missing from openzfs#9645 Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Kjeld Schouten-Lebbing <[email protected]> Issue openzfs#9645 Closes openzfs#9679
This sets send_realloc_files.ksh to use properties.shlib (like the other compression related tests) It was missing from #9645 Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Kjeld Schouten-Lebbing <[email protected]> Issue #9645 Closes #9679
This PR is based on my previous work in #9626 trying to find a more standardised way to select compression algorithms for the test suit.
TL:DR:
Signed-off-by: Kjeld Schouten-Lebbing [email protected]
Motivation and Context
During my work on investigating the compression test suite for #8941 a few things became appearant:
Description
This PR refactors it all.
properties.shlib
on
alias for the selection of tests, in favor oflz4
to prevent mistakes switching default algorithmlibtest.shlib
that was used to pass compresion algorithms (now directly uses the array inproperties.shlib
instead)One list to use them and in compression store them
Is * taken into account aka FAQ?
Q: Can't test failure of different levels slip past now?
A: Mostly levels are similair enough to the default to be found out just by using the default. If that's not the case a seperate test testing the different levels one time is more efficient than doing so for all tests.
Q: Can't test failure of aliasses slip past now?
A: Aliasses already have their own tests script or (in case of
on
) still get used a few times directly. So failures shouldn't slip past.Q: Don't we need more randomised selection again when more compression algorithms get added?
A: If the amount of algorithms in the list increases byond 8 or 9, 1 or 2 extra random draws might be needed. Considering the current number and the (slow) speed of new algorithms being added, this will suffice for quite a while
Q: Doesn't adding the same complete selection of algorithms increase test runtime?
_A: In scenario's where some compression algorithms where left out and no randomisation is used, it might take a little longer. However the same subset of algorithms should already have been used and, by decreasing the amount of gzip-based algorithms in the selection, in general less performance intensive tests are being used. Net it will stay about the same or a little faster, but in general the test will be more repeatable and comparable.
How Has This Been Tested?
I manually checked if all tests actually used the algorithms referenced and they do.
Types of changes
Checklist:
Signed-off-by
.