On Fri, May 05, 2017 at 09:22:21AM +0300, Nikolay Shirokovskiy wrote: > Push backup is a backup when hypervisor itself copy backup data to destination > in contrast to pull backup when hypervisor exports backup data thru some > interface and mgmt itself make a copy. > > This patch series basically adds creating backup to API/remote/qemu/virsh and > initial backup XML definition. > > Just like other blockjobs backup creation is asynchronous. That is creation is > merely a backup start and client should track backup error/completion thru > blockjob events. As backup is done transactionally all individual disk backup > jobs will be aborted by qemu itself in case of error, client need not to do it > manually. Client can cancel the backup by aborting blockjob on any disk being > backed up. > > Backup xml desription is similar to snapshot one with some exceptions and is > described in more details in definition patch [1]. > > I guess good client will track progress for every disk in backup to report > progress and detect hangs so it don't need extra backup complete/error event > that aggregate the overall backup result. However it looks like aborting backup > can be implemented in libvirt as code will be common for all clients. We need > to abort some of not yet completed per disk backups and retry if job to be > aborted is completed meanwhile. > > Of coures this series is far from being complete. Incremental backups and > backup persistent metadata is to be implemented. Let's just start work in this > direction. I've not done a detailed code review, but from a high level design POV, I think things like API, RPC, etc, look good. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list