qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] "File too large" error from "qemu-img snapshot" (was Re


From: Max Reitz
Subject: Re: [Qemu-devel] "File too large" error from "qemu-img snapshot" (was Re: AW: Bug Repoting Directions Request)
Date: Wed, 19 Nov 2014 15:05:48 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0

On 19.11.2014 12:41, Paolo Bonzini wrote:

On 19/11/2014 12:39, Prof. Dr. Michael Schefczyk wrote:
Dear Paolo,

thank you very much for your prompt reply.
Hi,

please keep the replies on the mailing list.  I've added the qemu-devel
mailing list, where more people should be able to see the message and
hopefully reply with something helpful.

Also, how do you do the backups?

Paolo

For example, I have a guest named "gatewayb72.img" where the backup failed. If 
I thereafter try to create or delete a snapshot, the following reply occurs on the 
command line:


address@hidden kvm02]# qemu-img snapshot -d gatewayb72 /kvm02/gatewayb72.img
qemu-img: Could not open '/kvm02/gatewayb72.img': Could not read snapshots: 
File too large


If I want to reboot that machine, I get the following error:


Fehler beim Starten der Domain: Interner Fehler: Prozess wurde während der 
Verbindungsaufnahme zum Monitor beendet : qemu-kvm: -drive 
file=/kvm02/gatewayb72.img,if=none,id=drive-virtio-disk0,format=qcow2,cache=none:
 could not open disk image /kvm02/gatewayb72.img: Could not read snapshots: 
File too large


Traceback (most recent call last):
   File "/usr/share/virt-manager/virtManager/asyncjob.py", line 100, in 
cb_wrapper
     callback(asyncjob, *args, **kwargs)
   File "/usr/share/virt-manager/virtManager/asyncjob.py", line 122, in tmpcb
     callback(*args, **kwargs)
   File "/usr/share/virt-manager/virtManager/domain.py", line 1220, in startup
     self._backend.create()
   File "/usr/lib64/python2.7/site-packages/libvirt.py", line 698, in create
     if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirtError: Interner Fehler: Prozess wurde während der Verbindungsaufnahme 
zum Monitor beendet : qemu-kvm: -drive 
file=/kvm02/gatewayb72.img,if=none,id=drive-virtio-disk0,format=qcow2,cache=none:
 could not open disk image /kvm02/gatewayb72.img: Could not read snapshots: 
File too large


Based on the facts I can see, the file is not too large. When reading the first error, 
the file size was 13.8 GB, while the limit is 14.5 GB. The same does also happen with 
files which are only, for example 6 GB big, while their limit is also 14.5 GB. Therefore, 
I think that the "file too large" really stands for something else.

It most probably does, yes. Some months ago, we included a limit in qemu's qcow2 implementation for the (internal) snapshot table size. When this limit is hit, "File too large" will be printed (it's a pretty bad error message, I know, but we thought it never to occur for reasonable images, so we did not see the need to improve it). That limit is 64 MB, which comes from having 1 kB of metadata per snapshot in average and a maximum of 64k snapshots. 1 kB per snapshot is reasonable: Normally, you have 56 bytes plus the length of the snapshot's name plus the length of the snapshot's ID (plus a couple of bytes of padding).

We have indeed seen some bug reports regarding this limit; however, nobody could provide us with an image to look into this issue so far (as far as I'm aware), and we could not reproduce it ourselves.

I understand that providing a 13.8 GB image is a bit much, but maybe you are able to do it anyway (the TU Dresden does have a reasonable internet connection, as far as I'm aware) or, if possible, provide us with information on how to recreate a similar image ourselves.

Max



reply via email to

[Prev in Thread] Current Thread [Next in Thread]