Description of problem: When migrating a VM to Ceph-RBD storage class with Block volume mode, it fails with the following error message: I0107 13:59:28.976462 1 vddk-datasource.go:569] Found a hole, filling destination with zeroes. I0107 13:59:28.976494 1 vddk-datasource.go:572] Found a zero block, filling destination with zeroes. E0107 13:59:28.976503 1 vddk-datasource.go:639] Unable to ftruncate file: invalid argument E0107 13:59:28.976515 1 vddk-datasource.go:929] Unable to copy block at offset 159383552: invalid argument E0107 13:59:35.256748 1 data-processor.go:234] invalid argument Unable to transfer source data to target file kubevirt.io/containerized-data-importer/pkg/importer.(*DataProcessor).ProcessDataWithPause /remote-source/app/pkg/importer/data-processor.go:206 kubevirt.io/containerized-data-importer/pkg/importer.(*DataProcessor).ProcessData /remote-source/app/pkg/importer/data-processor.go:166 main.main /remote-source/app/cmd/cdi-importer/importer.go:176 runtime.main /usr/lib/golang/src/runtime/proc.go:203 runtime.goexit /usr/lib/golang/src/runtime/asm_amd64.s:1373 E0107 13:59:35.256897 1 importer.go:178] invalid argument Unable to transfer source data to target file kubevirt.io/containerized-data-importer/pkg/importer.(*DataProcessor).ProcessDataWithPause /remote-source/app/pkg/importer/data-processor.go:206 kubevirt.io/containerized-data-importer/pkg/importer.(*DataProcessor).ProcessData /remote-source/app/pkg/importer/data-processor.go:166 main.main /remote-source/app/cmd/cdi-importer/importer.go:176 runtime.main /usr/lib/golang/src/runtime/proc.go:203 runtime.goexit /usr/lib/golang/src/runtime/asm_amd64.s:1373 It seems that the new implementation based on libnbd, is trying to ftruncate on the block device, which shouldn't work as the file size is immutable. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
Created attachment 1745313 [details] Log of failed pod
Matthew, have you found a way to resolve this? We've missed the cutoff for 2.6 and I'm trying to figure out if a fix would be feasible for 2.6.1 (merged within a week or two) or if we would be better off targeting 2.7.
Yes, I think this will be fixable within the week.
Fabien: I just retargeted this bug to 2.6.1 but I am wondering if we should move it to the v2v component since it would be your QE that is verifying the bug. What do you think?
Since we're still in blockers only phase, I guess this one can be left in 2.6.0, as long as a QE team accepts to validate it. What do you think?
Sure, sounds good. Let's get a PR merged to the main CDI branch and then we can entertain a backport to the stable branch once this bug has a QA ack.
Here is the PR: https://github.com/kubevirt/containerized-data-importer/pull/1564
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: OpenShift Virtualization 2.6.0 security and bug fix update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2021:0799