You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is quite likely related to #7703, but in my case happens only when -c is also enabled and I should be able to share more information.
Transferring data between pools with send -RDc (and perhaps other options, doesn't affect the outcome) causes some files on the receiving side to be corrupted. The corruption looks like portions of the file were skipped or replaced with a few unrelated bytes.
Describe how to reproduce the problem
# dd if=/dev/zero of=/mnt/stuff/testpool bs=4k count=1500k
# zpool create -o altroot=/tmp/foo testpool /mnt/stuff/testpool
# zfs send -RDLecpv zfs/backup/boston/ROOT@arg-190214-l | zfs recv -usFe testpool
full send of zfs/backup/boston/ROOT@dataset-reorg-1 estimated size is 40.6K
send from @dataset-reorg-1 to zfs/backup/boston/ROOT@dataset-reorg-2 estimated size is 624B
send from @dataset-reorg-2 to zfs/backup/boston/ROOT@arg-190214-l estimated size is 624B
full send of zfs/backup/boston/ROOT/gentoo@dataset-reorg-1 estimated size is 40.6K
send from @dataset-reorg-1 to zfs/backup/boston/ROOT/gentoo@dataset-reorg-2 estimated size is 3.91G
send from @dataset-reorg-2 to zfs/backup/boston/ROOT/gentoo@arg-190214-l estimated size is 1000M
total estimated size is 4.88G
RDLecpv were the options I used when I first discovered the problem, but -RDc alone is sufficient. Removing either -c or -D fixes the problem - no corruption when received.
It seems like the corruption happens on send, and is not just a fault with the original pool:
testpool is not corrupted, but testpool2 is (exactly the same way as above)
I cannot share this dataset as is, since it is a complete rootfs backup, including SSL keys. I will try removing all the sensitive data, take another snapshot and see if sending that snapshot alone still triggers the problem. If it does, I can share that send stream.
Include any warning/errors/backtraces from the system logs
Nothing in dmesg.
The text was updated successfully, but these errors were encountered:
The send --dedup flag has been removed by #10212. New releases (2.0+) will ignore the --dedup flag to zfs send, so you won't experience this problem. It's unfortunate that we didn't get to a root cause of this :(
System information
Describe the problem you're observing
This is quite likely related to #7703, but in my case happens only when -c is also enabled and I should be able to share more information.
Transferring data between pools with send -RDc (and perhaps other options, doesn't affect the outcome) causes some files on the receiving side to be corrupted. The corruption looks like portions of the file were skipped or replaced with a few unrelated bytes.
Describe how to reproduce the problem
Correct, source file:
Broken:
RDLecpv were the options I used when I first discovered the problem, but -RDc alone is sufficient. Removing either -c or -D fixes the problem - no corruption when received.
It seems like the corruption happens on send, and is not just a fault with the original pool:
testpool is not corrupted, but testpool2 is (exactly the same way as above)
I cannot share this dataset as is, since it is a complete rootfs backup, including SSL keys. I will try removing all the sensitive data, take another snapshot and see if sending that snapshot alone still triggers the problem. If it does, I can share that send stream.
Include any warning/errors/backtraces from the system logs
Nothing in dmesg.
The text was updated successfully, but these errors were encountered: