Skip to content
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

Fix incorrect error message for raw receive #8863

Merged
merged 1 commit into from
Jun 10, 2019

Conversation

tcaputi
Copy link
Contributor

@tcaputi tcaputi commented Jun 6, 2019

This patch fixes an incorrect error message that comes up when
doing a non-forcing, raw, incremental receive into a dataset
that has a newer snapshot than the "from" snapshot. In this
case, the current code prints a confusing message about an IVset
guid mismatch.

This functionality is supported by non-raw receives as an
undocumented feature, but was never supported by the raw receive
code. If this is desired in the future, we can probably figure
out a way to make it work.

Signed-off-by: Tom Caputi tcaputi@datto.com

Motivation and Context

#8758
We decided that it would be more difficult than it is worth to make this feature work for raw sends. This code simply makes the error message consistent.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Performance enhancement (non-breaking change which improves efficiency)
  • Code cleanup (non-breaking change which makes code smaller or more readable)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation (a change to man pages or other documentation)

Checklist:

This patch fixes an incorrect error message that comes up when
doing a non-forcing, raw, incremental receive into a dataset
that has a newer snapshot than the "from" snapshot. In this
case, the current code prints a confusing message about an IVset
guid mismatch.

This functionality is supported by non-raw receives as an
undocumented feature, but was never supported by the raw receive
code. If this is desired in the future, we can probably figure
out a way to make it work.

Signed-off-by: Tom Caputi <tcaputi@datto.com>
@behlendorf behlendorf changed the title Fix incrrect error message for raw receive Fix incorrect error message for raw receive Jun 6, 2019
@prometheanfire
Copy link
Contributor

 We decided that it would be more difficult than it is worth to make this feature work for raw sends. This code simply makes the error message consistent.

does that mean that it will never work that way again?

@codecov
Copy link

codecov bot commented Jun 7, 2019

Codecov Report

Merging #8863 into master will increase coverage by 0.19%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #8863      +/-   ##
==========================================
+ Coverage   78.68%   78.87%   +0.19%     
==========================================
  Files         382      382              
  Lines      117771   117774       +3     
==========================================
+ Hits        92672    92900     +228     
+ Misses      25099    24874     -225
Flag Coverage Δ
#kernel 79.46% <100%> (+0.2%) ⬆️
#user 67.72% <0%> (+0.49%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b7109a4...23672da. Read the comment docs.

@tcaputi
Copy link
Contributor Author

tcaputi commented Jun 7, 2019

We can probably make this work at some point in the future if we want. Doing that will require more investigation though and we've decided not to prioritize it at the moment. The fix here is easy to reason about and (at least) communicates to the end user how they can solve the problem.

Copy link
Contributor

@behlendorf behlendorf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Verified that with this change the updated error message is now:

cannot receive incremental stream: destination tank/fs has been modified
since most recent snapshot

@behlendorf behlendorf added the Status: Code Review Needed Ready for review and testing label Jun 7, 2019
@behlendorf behlendorf added Status: Accepted Ready to integrate (reviewed, tested) and removed Status: Code Review Needed Ready for review and testing labels Jun 10, 2019
@behlendorf behlendorf merged commit c08c30e into openzfs:master Jun 10, 2019
behlendorf pushed a commit that referenced this pull request Jun 11, 2019
This patch fixes an incorrect error message that comes up when
doing a non-forcing, raw, incremental receive into a dataset
that has a newer snapshot than the "from" snapshot. In this
case, the current code prints a confusing message about an IVset
guid mismatch.

This functionality is supported by non-raw receives as an
undocumented feature, but was never supported by the raw receive
code. If this is desired in the future, we can probably figure
out a way to make it work.

Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Signed-off-by: Tom Caputi <tcaputi@datto.com>
Issue #8758
Closes #8863
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Accepted Ready to integrate (reviewed, tested)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants