On 10.05.2017 11:11, Daniel P. Berrange wrote: > 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 > Thanx for review! Now when things look ok I'll add docs. Nikolay -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list