Comment 10 for bug 1420848

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/163060
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=b9bae02af2168ad64d3b3d28c97c3853cee73272
Submitter: Jenkins
Branch: master

commit b9bae02af2168ad64d3b3d28c97c3853cee73272
Author: Chris Friesen <email address hidden>
Date: Fri Mar 27 09:23:48 2015 -0600

    fix "down" nova-compute service spuriously marked as "up"

    Currently we use the auto-updated "updated_at" field to determine
    whether a service is "up". An end-user can cause the "updated_at"
    field to be updated by disabling or enabling the service, thus
    potentially causing a service that is unavailable to be detected
    as "up". This could result in the scheduler trying to assign
    instances to an unavailable compute node, or in the system
    mistakenly preventing evacuation of an instance.

    The fix is to add a new field to explicitly track the timestamp of
    the last time the service sent in a status report and use that if
    available when testing whether the service is up.

    DocImpact
    This commit will cause a behaviour change for the DB servicegroup
    driver. It will mean that enabling/disabling the service will
    cause the "updated_at" field to change (as before) but that will
    no longer be tied to the "up/down" status of the service. So
    "nova service-list" could show the service as "down" even if it
    shows a recent "updated_at". (But this could happen for the other
    servicegroup drivers already.)

    Closes-Bug: #1420848
    Change-Id: Ied7d47363d0489bca3cf2c711217e1a3b7d24a03