I ran into a strange behavior with libvirt snapshots. I have some vms running with thin-provisioned qcow2 disk images (libvirt 1.1.3 with fedora 20).
* When I create a snapshot on the VM, the qcow file suddenly grows big, somewhat bigger than the maximum size of the disk.
* When I delete the snapshot, the allocated disk space is not freed up, the qcow image remains the same size. However, if I create a new snapshot again, it will take the previous snapshot's space. This does not seem to be very well documented in qemu and the man page, manual, online documentation, wiki etc does not mention it.