Hello Eic, hello list, On Saturday 06 August 2011 02:00:04 Eric Blake wrote: > There's still a lot to go before virsh snapshot can manage disk > snapshots in addition to checkpoints, but I wanted to get the > review started on these. > > Even with these patches, there are some major bugs with snapshots: > 1. Snapshots aren't storing the domain XML. If you create a > snapshot, then hotplug a device, then revert to the snapshot, > then the reversion process should include hot-unplugging that > device (qemu won't automatically do it); fixing that requires > diffing the xml between now and the reversion point. I posted a proof-of-concept implementation back in April <http://www.redhat.com/archives/libvir-list/2011-April/msg00564.html>, which put a copy of the domain-xml into the snapshot-xml file, so it could be restored. - The patch is bit-rotting since than, but the implemetation more or less works with our version of libvirt-0.8.3. - The implementation always restarts the kvm process, because virDomainDefCheckABIStability() wasn't available back than which I think can be used to decide, if the current currung kvm process is compatible with the to-be-restored configuration. > 2. Restarting libvirtd forgets which snapshot is current. When > creating a new snapshot, it is important to remember the current > snapshot in order to track the relationships correctly. That's what I also noticed. Why is the parent important? As long as you use qemus internal snapshots, I think you don't need it. I think is important if you build chained snapshots and than want to delete intermediate snapshots. > 4. Probably more issues that need thinking about... 5. Migrating a domain with snapshots looses the snapshots, because the receiving libvirtd doesn't get the snapshot-xml data as well. The data is still there, but you have to move the domain back to the original host and must restart libvirtd, because libvirtd only reads the snapshot-xml-data once on initial start; not on reload or any other event. 6. Reverting to an offline-snapshot currently does not work with qemu-0.14, since "qemu loadvm" doesn't call itself responsible for doing that any longer; see <http://lists.gnu.org/archive/html/qemu-devel/2011-08/msg00650.html> for details. If you (or anybody other) is working on those issues, please keep me (and the list) informed, so we don't do double implementation. Thanks. Sincerely Philipp -- Philipp Hahn Open Source Software Engineer hahn univention de Univention GmbH Linux for Your Business fon: +49 421 22 232- 0 Mary-Somerville-Str.1 D-28359 Bremen fax: +49 421 22 232-99 http://www.univention.de/
Description: This is a digitally signed message part.