oVirt / ovirt-engine

The oVirt Engine virtualization manager
Other
493 stars 259 forks source link

Implement checkBitmap to check bitmap status before backup #866

Open dupondje opened 1 year ago

dupondje commented 1 year ago

Sometimes a bitmap cam become invalid/corrupt without oVirt noticing this. For example if a hypervisor crashes, the active bitmap will become invalid.

This will currently cause oVirt to fail to create a NBDServer, as it will error with 'Bitmap does not exist in ...'.

We add a command to check the bitmap status before the backup is created. If the bitmap is invalid, we throw an error and remove the invalid bitmapId.

The VDSM side also needs to be implemented, but that's easy :) Would be great if some maintainer can give his comments on the idea and the code!

bennyz commented 1 year ago

Is there a corresponding vdsm PR? it would need to be merged first, also, I think we'll need to add this verb to host capabilities[1] so it isn't sent to older hosts

[1] https://github.com/oVirt/vdsm/blob/07d3089049b1ac81a3efbc14856679c4aa82b412/lib/vdsm/host/caps.py

dupondje commented 1 year ago

Updated the code to work with the latest vdsm patch https://github.com/oVirt/vdsm/pull/394