Description of problem: NBD protocol introduced new URL syntax recenlty: https://github.com/NetworkBlockDevice/nbd/blob/master/doc/uri.md NBD URI Export name ---------------------------------------------------- nbd://example.com/disk disk nbd+unix:///disk?socket=sock disk nbd://example.com/ (empty string) nbd://example.com (empty string) nbd://example.com//disk /disk nbd://example.com/hello%20world hello world imageio supports qemu non-standard syntax, and the nbd:// URL syntax. QEMU NBD URI Export name --------------------------------------------------- nbd:unix:/socket:exportname=disk disk nbd:unix:/socket (empty string) nbd:unix:/socket:exportname= (empty string) nbd:example.com/disk disk nbd://example.com/disk disk We need to support the new standard syntax for better compatibility with virt-v2v. NBD URL are generated by vdsm when starting NBD server or backup. Vdsm can use the new URL syntax only when all hosts are running imageio version that understand the new syntax.
Related to bug 1657713, using NBD transport for virt-v2v.
This request is not currently committed to 4.4.z, moving it to 4.5
Nir, is there a good reason to support the new syntax? can we just stay with the old syntax?
Consistency with other projects and a predictable system for quoting/escaping unsafe characters in paths and export names.
(In reply to Eyal Shenitzky from comment #3) > Nir, is there a good reason to support the new syntax? can we just stay with > the old syntax? New URL format is required for exposing NBD socket to virt-v2v, or to other clients. qemu may deprecate the old non-standard URL syntax in future versions, which will break our backup code. Keeping the old format is technical debt.
We are past 4.5.0 feature freeze, please re-target.
We'll keep the bug on VDSM - it's obvious that a change in imageio is needed for this
Bug is tracked upstream in https://github.com/oVirt/ovirt-imageio/issues/68.