Closed jimklimov closed 4 years ago
Tested on local system, wrinkled out some issues and optimized a bit, seems to work for me. Details about test setup and routine in #385.
what would be really cool would be if you enhanced the test suite accordingly
I am not actually sure how to go about auto-testing it at this time :\
I did git grep destroySnapshot
and found one more use-case I missed before :) but otherwise there were no apparent hits under tests. A gmake check
fails for me regardless - in the master branch as well...
Bumped to align with current master.
Also read up today on ability to have resursive mode but certain datasets not enabled.
Updated to align with current master. Every PR wants some love one year or another ;)
Also read today about an ability to have recursive backup plan, but have it not enabled on some child datasets. I wonder if this recursive mass-removal would contradict anything (e.g. cleaning up datasets that we did not intend to actively back up? good... To touch? bad...)
any thoughts on how to add testing ?
Probably a few lines in random files under t/
directory should do it. Just gotta carve them out :)
So I somewhat cheated at first and covered the previously existing but not-covered code ;)
And went from there to cover some of the new paths as well.
I anticipate that after merging #439, the coverage would also include large blocks about (cleaning) child datasets that inherit a backup plan but are not directly configured. I did not port it here because it largely depends on changes made for that PR, in both mock zfs
and maybe the production code.
Idea for after merging these PRs (and so taking advantage of the logical structure in that one) - also add tank/source
child datasets that would have org.znapzend:enabled==off
into t/zfs
output, and so test -cover one more family of codepaths.
UPDATE: Added this feature in that PR.
let me know when you deem the whole thing complete :) I will then review!
I hope the two PRs are now complete (and beyond, with the testing cleanups) and should hopefully not conflict when merging :)
This should take care of #385, but so far has not been tested on real systems ;)