Description
It seems there is a problem while importing a large VHD file (1TiB+).
It's pretty easy to reproduce: it breaks instantly. First, let's use a VDI having more than 1TiB in content and export it "locally" (NFS share mounted manually to store it in my case):
xe vdi-export uuid=<VDI_UUID> format=vhd filename=<FILENAME.vhd>
This works after a while (15+ hours to export it, but with success). The VHD file is valid (using vhd-util check for example, returns that the VHD file is correct. Other tools too)
The issue is when you want to import it:
xe vdi-import filename=big.vhd progress=true format=vhd uuid=<VDI_UUID>
[-] ######################################################> (100% ETA 00:00:00)
Total time: 00:00:02
Error code: VDI_IO_ERROR
Error parameters: Device I/O errors
Obviously, it looks like the SR is problematic, but using a VHD file that's smaller than 1TiB (eg 800GiB) works perfectly on the same SR. Which is NFS by the way. I also tried on another pool, with the same VHD, on a Local LVM SR: same result. So we can exclude a SR problem.
Nothing in SMlog, but xensource.log contains some stuff that I pasted here: https://hastebin.com/ivotepahin.swift
In my opinion, the export is fine and it's not the issue. I have suspicion on the VHD library when the VHD starts to be really big, but it's hard to pinpoint the exact place.
Can you check on your side that you can reproduce the issue?