Comment 1 for bug 1347795

Revision history for this message
aeva black (tenbrae) wrote :

As far as I got triaging this, it seems to stem from this line:

https://github.com/openstack/nova/blob/master/nova/compute/resource_tracker.py#L384

   def update_available_resources(self, context):
        ...
        LOG.audit(_("Auditing locally available compute resources"))
        resources = self.driver.get_available_resource(self.nodename)

    def _write_ext_resources(self, resources):
        resources['stats'] = {}
        resources['stats'].update(self.stats)
        self.ext_resources_handler.write_resources(resources)

When a virt driver returns resources containing a "stats" dict, prior to this patch, those stats were exposed to the scheduler and used to inform the ComputeCapabilitiesFilter. After the referenced patch landed, they are ignored, and any stats are overwritten with an empty dict.

This passes the gate because libvirt does not use this mechanism.