-
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
An interrupted initial raw zfs send can not be resumed with reported token: error 1030 IV set guid missing #10234
Labels
Comments
behlendorf
added
Component: Encryption
"native encryption" feature
Component: Send/Recv
"zfs send/recv" feature
labels
Apr 21, 2020
cc @tcaputi |
tcaputi
pushed a commit
to tcaputi/zfs
that referenced
this issue
Apr 23, 2020
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Fixes: openzfs#10234 Signed-off-by: Tom Caputi <tcaputi@datto.com>
12 tasks
@IslandLife assuming youre ok building your own zfs would you mind giving this PR a spin? #10239 |
I applied your patch and it works now. Thanks! |
behlendorf
pushed a commit
that referenced
this issue
Apr 25, 2020
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes #10234 Closes #10239
behlendorf
pushed a commit
to behlendorf/zfs
that referenced
this issue
Apr 28, 2020
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes openzfs#10234 Closes openzfs#10239
tonyhutter
pushed a commit
to tonyhutter/zfs
that referenced
this issue
Apr 28, 2020
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes openzfs#10234 Closes openzfs#10239
tonyhutter
pushed a commit
to tonyhutter/zfs
that referenced
this issue
Apr 29, 2020
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes openzfs#10234 Closes openzfs#10239
as-com
pushed a commit
to as-com/zfs
that referenced
this issue
Jun 20, 2020
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes openzfs#10234 Closes openzfs#10239 (cherry picked from commit aa64632)
as-com
pushed a commit
to as-com/zfs
that referenced
this issue
Jun 20, 2020
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes openzfs#10234 Closes openzfs#10239 (cherry picked from commit aa64632)
jsai20
pushed a commit
to jsai20/zfs
that referenced
this issue
Mar 30, 2021
This patch corrects a bug introduced in 61152d1. When resuming a raw base receive, the dmu_recv code always sets drc->drc_fromsnapobj to the object ID of the previous snapshot. For incrementals, this is correct, but for base sends, this should be left at 0. The presence of this ID eventually allows a check to run which determines whether or not the incoming stream and the previous snapshot have matching IVset guids. This check fails becuase it is not meant to run when there is no previous snapshot. When it does fail, the user receives an error stating that the incoming stream has the problem outlined in errata 4. This patch corrects this issue by simply ensuring drc->drc_fromsnapobj is left as 0 for base receives. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes openzfs#10234 Closes openzfs#10239
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
System information
Describe the problem you're observing
An interrupted initial full raw zfs send can not be resumed with reported token:
If you attempt to resume using the provided token you get an error message:
This behaviour is seen on a raw send but not on a simple send. A simple send can be resumed OK.
Describe how to reproduce the problem
Example:
The provided token appears valid, send -nv does interpret it
However it can not be used
The use of dd and testing if the reported token can be used and possibly a whole series of interrupted and resumed streams is something which could be used in a test script.
The text was updated successfully, but these errors were encountered: