For some reason I did not see this change in the mailing list:
https://github.com/libguestfs/virt-v2v/commit/18084f90d9dd9092831cb348703...
The commit message claims:
Using -oa preallocated with -o rhv-upload always gave an error. We
should be able to implement this properly in modular virt-v2v, but as
this option did nothing here remove it to simplify things.
But I used -oa preallocated and -oa sparse and it worked fine after removing
the unhelpful validation, and using:
sparse=params["output_sparse"]
The code was already broken even before this change with block storage domain
(iSCSI/FC) and raw format (the default), since raw-sparse is not supported in
block base storage, but now there is no way to fix the code.
We can always use qcow2-sparse - this combination is most useful in RHV
but using raw preallocated volume can give better performance or reliability
and this is still the default format for block storage RHV.
Since RHV does not support the feature of selecting the image format and
allocation policy for the user, and does not make the available combinations
or the system defaults available via the API, virt-v2v must pass the decision
to the user of the program.
Nir