Comment 13 for bug 1767139

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

Reviewed: https://review.openstack.org/566161
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=f95a10b26eb67796a4de32c32afe85c8f6a77048
Submitter: Zuul
Branch: stable/queens

commit f95a10b26eb67796a4de32c32afe85c8f6a77048
Author: Matt Riedemann <email address hidden>
Date: Thu May 3 11:21:47 2018 -0400

    Handle @safe_connect returns None side effect in _ensure_resource_provider

    Change I0c4ca6a81f213277fe7219cb905a805712f81e36 added more error
    handling to the _ensure_resource_provider flow but didn't account
    for @safe_connect returning None when calling _create_resource_provider
    in the case that nova-compute is started before placement is running.
    If that happens, we fail with a TypeError during the nova-compute
    startup because we put None in the resource provider cache and then
    later blindly try to use it because the compute node resource provider
    uuid is in the cache, but mapped to None.

    This adds the None check back in _ensure_resource_provider and if
    None is returned from _create_resource_provider we raise the same
    exception that _create_resource_provider would raise if it couldn't
    create the provider.

    Change-Id: If9e1581db9c1ae14340b787d03c815d243d5a50c
    Closes-Bug: #1767139
    (cherry picked from commit 80a001989351d3d427c204c8c06cfacc964f2a35)