On 09/16/2013 06:36 AM, Peter Krempa wrote:
> External checkpoints have a bug in the implementation where they use the
> normal definition instead of the "migratable" one. This causes errors
> when the snapshot is being reverted using the workaround method via
> qemuDomainRestoreFlags() with a custom XML. This issue was introduced
> when commit 07966f6a8b5ccb5bb4c716b25deb8ba2e572cc67 changed the code to
> compare "migratable" XMLs from the user as we should have used
> migratable in the image too.
>
> This patch adds a compatibility layer, so that fixing the snapshot code
> won't make existing snapshots fail to load.
>
> Resolves:
https://bugzilla.redhat.com/show_bug.cgi?id=1008340
> ---
> src/qemu/qemu_driver.c | 22 +++++++++++++++++++---
> 1 file changed, 19 insertions(+), 3 deletions(-)
Uggh, but makes sense.
>
> if (!virDomainDefCheckABIStability(def, newdef)) {
> virDomainDefFree(newdef);
> - goto error;
> + virResetLastError();
> +
> + /* Due to a bug in external snapshot creation code, the XML saved
a bug in older versions of external snapshot creation code,
ACK with that comment tweak (and maybe even call out that external
snapshots created prior to 1.1.3 have the bug).
I've fixed the comment and mentioned the broken versions and pushed.
Thanks.
PEter