OVA import failing

  • XOA channel latest (5.60.0) reported the same issue as XO 5.60.0. So it looks like its a XOA issue appeared in latest version.

  • XCP-ng Team

    Do you have an error message @tofaz ?

    Okay, ping @julien-f and @nraynaud

    Any idea why OVA fails on latest?

  • @olivierlambert Same as the one mentioned by the OP: Error: buffer grain directory address is too short, expecting 8 minimum, got 0

    Thank you!

  • XCP-ng Team

    Hi Tofaz,

    would you be able to transfer me the failing file please?



  • @nraynaud Since my original VM had some confidential data I have created a new VM test in order to reproduce the issue. Well with this VM the problem does not occur even with XO 5.60. The only differences that I can think at the moment are Windows (before Windows Server 2019 and now Windows 10 pro) and the VMtools (before with tools and now without tools).

    I will run more test and let you know.

    Thank you!

  • XCP-ng Team

    @tofaz Thank you, it's really hard to find the bug without a reliable reproduction. Even for simple bugs.

  • @nraynaud I sent you the link of the VM via PM. It looks like the web interface is not complaining but then the VM is not able to find a bootable hard disk upon start.

  • XCP-ng Team

    @tofaz thanks, I'll have a look at it.

  • XCP-ng Team

    @tofaz I don't see the parsing problem with the .ova file you sent me.

    I have another test you could try: extract the .vmdk file from the ova, and try importing the disk itself, you should get the same error since it's the same .vmdk parser.

  • I was having this problem too. I used OVFTool 4.3.0 to export a VM to ova. I am not sure if it's just coincidence or not, but the first ova imported fine using sources.

    However, I exported two more VMs using a different machine and I received the same error. I used XO from quick deploy on the main screen. Both of the VMs imported fine using the quick deploy. This was on a fresh install last week. (My First Time Using XCP-ng)

    The first VM was smaller than the other two. It was exported out on a Windows 10 machine. The other two VMs were on a Windows Server 2012R2 machine.

    I am sure other people have done this before as well, but I used Veeam Agent to import most of my larger VMs. I booted off the ISO and restored from my backups and had little problems with getting the machines to work. The only thing I changed was the NIC type to an intel because I wasn't getting gigabit speeds during the restore.

  • I am having an identical problem. The error message is the same as stated right at the start. It is made up of English words but makes no sense at all.

    I have the appliance with latest stable and I have also built the latest available from sources and both fail identically.

    I have previously imported another VM from ESXi 5.5 without problem. This .ova is just about 50 GB.

    Maybe, just as a clue, someone could tell me, or us, what the error message is actually complaining about. I live in Texas so I am familiar with grain silos, but I don't recall ever having heard of a grain directory, and I certainly would have given it 8 had I known what it was looking for.

  • @nraynaud I have imported the .vmdk file of the VM that I have sent you and it completed fine.

  • XCP-ng Team

    @martinhorton Haha, sorry, it's the VMDK parser.

    OVA files are a tar files containing an XML file (.ovf) that describes the VM and .vmdk files that representing the disks. The VMDK file format uses a specific vocabulary, and each block of data is called a "grain" and there is a table that contains all the addresses of the "grains". The parser couldn't find it.

    Can someone please send me a .ova file that triggers this error? I really need to trigger it on my machine to fix it.



  • @nraynaud OK, I've just woken up and read your message. Based on the message I am going to add the following information that now seems relevant. This VM, prior to being exported had a disk removed but not deleted from disk. My guess, and of course, it's only a guess, is that the file is listed in the XML file as part of the VM but in reality isn't there because the file was deleted.

    I am going to remove the file from the directory and save it somewhere else and then re-export it and see if it works.

    But now I will repeat my little mantra that I used to lecture people with as a software developer for decades. Make your error messages meaningful. Had this error message said "Hard disk 2 listed in inventory but file not found" I am guessing it would have triggered a memory in me or anyone else. My favorite pet peeve is the error message "File was not found". That means nothing; the message 'File abc.docx not found in directory C:\somedirectory" is a lot more meaningful.

    I'll report back on the success or otherwise of my test.

  • @nraynaud I tried that, it didn't work

    I am uploading the .ovf file

  • @nraynaud I unfortunately deleted my ova files. However, I still have the esxi server. I am exporting a new ova now. If I can get the error to happen for me again I will send you a link to download the ova file.

  • XCP-ng Team

    @cbritton thank you, that would be great.

    I really want everybody here know that I believe there is a bug in my code, it's just that I really need help reproducing on my machine to pinpoint it.

  • XCP-ng Team

    @cbritton privately sent me a file that exhibit the error, many thanks. I am searching for the bug now.

  • XCP-ng Team

  • @nraynaud I see you have fixed the bug. How do I implement this? Do I have to rebuild XO from sources again? Also, thanks for fixing it.

Log in to reply

XCP-ng Pro Support

XCP-ng Pro Support