Description of problem: If preallocation is enabled globally, create a DataVolume without preallocation stated, the annotation of DV's PVC is cdi.kubevirt.io/storage.preallocacation.requested: "false" Discussed with Tomasz, the correct behavior is: DV preallocation: true -> cdi.kubevirt.io/storage.preallocacation.requested: true DV preallocation: false -> cdi.kubevirt.io/storage.preallocacation.requested: false DV preallocation not present global: true -> cdi.kubevirt.io/storage.preallocacation.requested: true global: false -> cdi.kubevirt.io/storage.preallocacation.requested: false global not present -> cdi.kubevirt.io/storage.preallocacation.requested: false (false is the default) Version-Release number of selected component (if applicable): Containerized Data Importer v1.28.2 How reproducible: 100% Steps to Reproduce: 1. Enable preallocation globally. $ [cnv-qe-jenkins@stg05-qixuan-b59vp-executor ~]$ oc get cdi -o yaml apiVersion: v1 items: - apiVersion: cdi.kubevirt.io/v1beta1 kind: CDI metadata: [...] spec: config: featureGates: - HonorWaitForFirstConsumer filesystemOverhead: global: "0.055" preallocation: true infra: {} uninstallStrategy: BlockUninstallIfWorkloadsExist workload: {} status: [...] 2. Create a general DataVolume 3. Check DV's PVC annotation. Actual results: [cnv-qe-jenkins@stg05-qixuan-b59vp-executor ~]$ oc get pvc xxx -o yaml | grep pre cdi.kubevirt.io/storage.preallocacation.requested: "false" Expected results: cdi.kubevirt.io/storage.preallocacation.requested: "true" Additional info:
Tomasz please take a look at this bug and see how it's different from Bug 1915704.
Bug 1915704 was reported as a problem with strict reconciliation and the resulting change in how CDI is configured, which turned out not to be a bug but a confusion regarding the correct way to setup configuration. However, an actual bug has been discovered with global configuration during investigation. Qi Xuan decided to verify 1915704 and open this one to track the real bug.
I changed it to ON_QA assuming that the linked PR (now merged) fixes the bug, please let me know if that's wrong.
Tested with Containerized Data Importer v1.28.3-9-g1f74571, the bug has been fixed. Move it to VERIFIED, thanks. Here is the test record. [cnv-qe-jenkins@stg11-gcp6c-executor ~]$ oc logs -f importer-my-dv-rbd I0318 08:25:07.239470 1 importer.go:52] Starting importer I0318 08:25:07.239609 1 importer.go:134] begin import process I0318 08:25:07.251269 1 data-processor.go:345] Calculating available size I0318 08:25:07.251330 1 data-processor.go:357] Checking out file system volume size. I0318 08:25:07.251344 1 data-processor.go:365] Request image size not empty. I0318 08:25:07.251358 1 data-processor.go:370] Target size 5179580416. I0318 08:25:07.251530 1 util.go:37] deleting file: /data/lost+found I0318 08:25:07.253204 1 data-processor.go:239] New phase: Convert I0318 08:25:07.253227 1 data-processor.go:245] Validating image I0318 08:25:07.428231 1 qemu.go:127] Added preallocation I0318 08:25:07.435039 1 qemu.go:224] 0.00 I0318 08:25:09.975036 1 qemu.go:224] 1.00 I0318 08:25:12.621699 1 qemu.go:224] 2.00 I0318 08:25:15.269274 1 qemu.go:224] 3.01 I0318 08:25:18.192360 1 qemu.go:224] 4.01 [...] I0318 08:29:38.005117 1 qemu.go:224] 97.50 I0318 08:29:42.047971 1 qemu.go:224] 98.50 I0318 08:29:44.883173 1 qemu.go:224] 99.50 I0318 08:29:46.693848 1 data-processor.go:239] New phase: Resize W0318 08:29:46.719944 1 data-processor.go:331] Available space less than requested size, resizing image to available space 4894703104. I0318 08:29:46.719972 1 data-processor.go:337] Expanding image size to: 4894703104 I0318 08:29:46.744381 1 data-processor.go:239] New phase: Preallocate I0318 08:29:46.744425 1 qemu.go:105] Added preallocation I0318 08:29:46.837427 1 data-processor.go:239] New phase: Complete I0318 08:29:46.837540 1 importer.go:212] Import Complete, Preallocation applied [cnv-qe-jenkins@stg11-gcp6c-executor ~]$ oc get pvc my-dv-rbd -o yaml | grep pre cdi.kubevirt.io/storage.preallocacation.requested: "true" cdi.kubevirt.io/storage.preallocation: "true" f:cdi.kubevirt.io/storage.preallocacation.requested: {} f:cdi.kubevirt.io/storage.preallocation: {}
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 (CNV 2.6.1 Images), 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/RHEA-2021:1126