fixed_ips missing from compute.update.end notifications
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
This is part of a series of reports around discrepancies between the nova servers API response and notification payloads as affects Searchlight; see https:/
An example API response to retrieve a server's information is at http://
An example compute.create.end notification is at http://
An example compute.update.end notification is at http://
fixed_ips is present in compute.create.end notifications and contains IP/MAC/network information related to neutron ports added during instance creation. This field is missing from compute.update.end notification payloads, and this causes us a problem because it's much better from Searchlight's perspective if notification payloads are consistent and complete representations of a resource's state.
Searchlight currently has an optimization to detect whether compute.update.end notifications represent scheduler state changes like suspending, resuming, etc, and for those does a partial update. For other events it currently has to go the nova API to get the current representation of the affected server.
Changed in nova: | |
status: | New → Invalid |
The versioned instance.create.end and instance.update notification have the same payload base class which contains an ip_addresses field [1] that holds [2] the necessary information.
[1]https:/ /github. com/openstack/ nova/blob/ master/ nova/notificati ons/objects/ instance. py#L81 /github. com/openstack/ nova/blob/ master/ nova/notificati ons/objects/ instance. py#L154
[2]https:/
Based on this I think this problem is already solved during the versioned notification transformation.