Stop, Rescue, and Delete should give guest a chance to shutdown

Bug #1261385 reported by OpenStack Infra
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openstack-manuals
Won't Fix
Medium
Unassigned

Bug Description

https://review.openstack.org/35303
commit b32d01d44ca5711c96d192df51bf7acd34f52556
Author: Phil Day <email address hidden>
Date: Tue Jul 2 15:32:57 2013 +0100

    Stop, Rescue, and Delete should give guest a chance to shutdown

    Currently in libvirt stop, shelve, rescue, and delete simply
    destroy the underlying VM. Some GuestOS's do not react well to this
    type of power failure, and so it would be better if these operations
    followed the same approach as soft_reboot and give the guest as
    chance to shutdown gracefully. Even where VM is being deleted,
    it may be booted from a volume which will be reused on another
    server.

    The change is implemented by adding a clean_shutdown parameter
    to the relevant methods from the compute/api layer downwards
    and into the virt drivers. The implementation in the libvirt
    driver is also provided. Other drivers are modified just to
    expect the additional parameter.

    The timer configuration value previous used by soft_reboot in
    libvirt is moved up to virt/driver so it can be used by other drivers.

    The timer logic itself is changed from simple loop counting with one
    second sleeps to a more precise approach, since testing showed that
    other calls in the loop could introduce a difference of up to +50% on
    the expected duration. This can extent the default two minute to
    three minutes, which would not be acceptable in some environments
    and breaks some of the tempest tests.

    A separate config value defines what the default shutdown
    behaviour for delete should be (default False to keep compatibility
    with current behaviour).

    This code is structured to enable a subsequent API change to add
    clean/forced options to the stop and delete methods

    Also as a minor tidy-up moved the repeated definition of
    FakeLoopingCall in test_libvirt be common across tests

    Partially-Implements: blueprint user-defined-shutdown
    Closes-Bug: #1196924

    DocImpact

    Change-Id: Ie69aa2621cb52d6fefdc19f664247b069d6782ee

Tags: nova
Tom Fifield (fifieldt)
Changed in openstack-manuals:
status: New → Confirmed
importance: Undecided → Medium
milestone: none → icehouse
Summer Long (slong-g)
Changed in openstack-manuals:
assignee: nobody → Summer Long (slong-g)
Revision history for this message
Tom Fifield (fifieldt) wrote :

Hi Summer, are you still working on this?

Tom Fifield (fifieldt)
Changed in openstack-manuals:
milestone: icehouse → juno
Revision history for this message
Summer Long (slong-g) wrote :

This code was merged, but then had to be reverted: https://review.openstack.org/#/c/62421/
The blueprint itself is still being worked on: https://blueprints.launchpad.net/nova/+spec/user-defined-shutdown
And is still in the 'needs code review' phase. Would say close this and wait for the next real bug to appear.

Changed in openstack-manuals:
status: Confirmed → Won't Fix
Tom Fifield (fifieldt)
Changed in openstack-manuals:
milestone: juno → none
Summer Long (slong-g)
Changed in openstack-manuals:
assignee: Summer Long (slong-g) → nobody
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.