From 1fae0052f23cc8d8511833ea9b7b9090e88e4d3b Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Thu, 28 Feb 2019 10:35:18 +0000 Subject: [PATCH] conf: Deprecate 'disable_libvirt_livesnapshot' option This was added to handle gate issues seen with libvirt 1.2.2. We haven't supported that version of libvirt for some time and we don't enable this in the gate anymore. Deprecate it and remove unnecessary references to it from tests and the support FAQ document. Change-Id: Ie3fa537a42d208a35467f03bd2110c2976927477 --- doc/source/admin/support-compute.rst | 24 ------------------- nova/conf/workarounds.py | 7 ++++++ nova/tests/unit/virt/libvirt/test_driver.py | 3 --- ...libvirt_livesnapshot-413c71b96f5e38d4.yaml | 9 +++++++ 4 files changed, 16 insertions(+), 27 deletions(-) create mode 100644 releasenotes/notes/deprecate-disable_libvirt_livesnapshot-413c71b96f5e38d4.yaml diff --git a/doc/source/admin/support-compute.rst b/doc/source/admin/support-compute.rst index 86dbadfbe3ee..5e3a7ae36747 100644 --- a/doc/source/admin/support-compute.rst +++ b/doc/source/admin/support-compute.rst @@ -272,30 +272,6 @@ To disable injection in libvirt, set the following in ``nova.conf``: injection. -Disable live snapshotting -------------------------- - -Problem -~~~~~~~ - -Administrators using libvirt version ``1.2.2`` may experience problems with -live snapshot creation. Occasionally, libvirt version ``1.2.2`` fails to create -live snapshots under the load of creating concurrent snapshot. - -Solution -~~~~~~~~ - -To effectively disable the libvirt live snapshotting, until the problem is -resolved, configure the ``disable_libvirt_livesnapshot`` option. You can turn -off the live snapshotting mechanism by setting up its value to ``True`` in the -``[workarounds]`` section of the ``nova.conf`` file: - -.. code-block:: ini - - [workarounds] - disable_libvirt_livesnapshot = True - - Cannot find suitable emulator for x86_64 ---------------------------------------- diff --git a/nova/conf/workarounds.py b/nova/conf/workarounds.py index fe20532ec696..ce4b07224895 100644 --- a/nova/conf/workarounds.py +++ b/nova/conf/workarounds.py @@ -67,6 +67,13 @@ Interdependencies to other options: cfg.BoolOpt( 'disable_libvirt_livesnapshot', default=False, + deprecated_for_removal=True, + deprecated_since='19.0.0', + deprecated_reason=""" +This option was added to work around issues with libvirt 1.2.2. We no longer +support this version of libvirt, which means this workaround is no longer +necessary. It will be removed in a future release. +""", help=""" Disable live snapshots when using the libvirt driver. diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py index 365e932868e8..074733b42996 100644 --- a/nova/tests/unit/virt/libvirt/test_driver.py +++ b/nova/tests/unit/virt/libvirt/test_driver.py @@ -22236,7 +22236,6 @@ class LibvirtSnapshotTests(_BaseSnapshotTests): @mock.patch.object(host.Host, 'get_guest') @mock.patch.object(host.Host, 'write_instance_config') def test_failing_domain_not_found(self, mock_write_config, mock_get_guest): - self.flags(disable_libvirt_livesnapshot=False, group='workarounds') mock_dev = mock.Mock(spec=libvirt_guest.BlockDevice) mock_guest = mock.Mock(spec=libvirt_guest.Guest) mock_guest.get_power_state.return_value = power_state.RUNNING @@ -22338,7 +22337,6 @@ class LibvirtSnapshotTests(_BaseSnapshotTests): mock_version, mock_resolve, mock_snapshot): - self.flags(disable_libvirt_livesnapshot=False, group='workarounds') self.flags(images_type='rbd', group='libvirt') mock_guest = mock.Mock(spec=libvirt_guest.Guest) mock_guest._domain = mock.Mock() @@ -22366,7 +22364,6 @@ class LibvirtSnapshotTests(_BaseSnapshotTests): mock_resolve, mock_find_disk, mock_convert): - self.flags(disable_libvirt_livesnapshot=False, group='workarounds') self.flags(images_type='rbd', group='libvirt') rbd = mock_driver.return_value rbd.parent_info = mock.Mock(side_effect=exception.ImageUnacceptable( diff --git a/releasenotes/notes/deprecate-disable_libvirt_livesnapshot-413c71b96f5e38d4.yaml b/releasenotes/notes/deprecate-disable_libvirt_livesnapshot-413c71b96f5e38d4.yaml new file mode 100644 index 000000000000..e337537136bb --- /dev/null +++ b/releasenotes/notes/deprecate-disable_libvirt_livesnapshot-413c71b96f5e38d4.yaml @@ -0,0 +1,9 @@ +--- +deprecations: + - | + The ``[workarounds] disable_libvirt_livesnapshot`` config option has been + deprecated. This was necessary to work around an issue with libvirt v1.2.2, + which we no longer support. For more information refer to `bug + #1334398`__. + + __ https://bugs.launchpad.net/nova/+bug/1334398