Description of problem: When a host crashes during a live merge operation resulting in the VM crashing, we need to take some special steps in vdsm to ensure that we can recover using shared storage only. This involves two changes:
1. For active layer merges, mark the leaf volume as ILLEGAL before pivoting. This allows engine to determine that this leaf has been merged and can be discarded.
2. Allow a live merge to be resubmitted on a new host using blank volume uuids. This will tell vdsm to skip the libvirt part of the merge but to rerun synchronization operations.
How reproducible: Always
Steps to Reproduce:
1. Start live merge operation
2. Panic host in the middle of the operation
3. Reboot host
4. Re-run VM
Actual results: Engine cannot re-run the vm because the previous live merge operation status cannot be determined.
Expected results: Engine re-runs the VM and the metadata is properly synchronized to the results of the initial live merge operation.
oVirt 3.5 has been released and should include the fix for this issue.