abh1sar commented on PR #13074: URL: https://github.com/apache/cloudstack/pull/13074#issuecomment-4698717726
> Re-register the parent with **`checkpoint-create --redefine`** using the **full** `checkpoint-dumpxml` output (a minimal/synthesized XML is rejected by libvirt's checkpoint RNG schema). So: persist `<bitmap>.checkpoint.xml` next to each backup on the NAS, and on recreate `--redefine` from the parent backup's saved XML @jmsperu In my testing, I found that a full checkpoint xml was not required. Just the `checkpoint name` and the `created` tag is enough for redefine. We don't have to store `created` as it doesn't have to be accurate. Checkpoints are ephemeral anyway. Can you please check https://github.com/shapeblue/cloudstack/blob/integration-veeam-kvm/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtStartBackupCommandWrapper.java#L127? This way we don't have to persist the full checkpoint xml. > On the larger "move the checks into Java" suggestion: I started it, but testing showed the recreate needs checkpoint-dumpxml + --redefine against NAS-side XML, which is cohesive in the script — I've kept it there for now and can revisit the Java move as a follow-up. With the above change the Virsh checkpoint redefine logic can be moved to Java. If checkpoint redefine fails, the Java code can fallback to full and call nasbackup.sh without the -M flag. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
