[openstack-dev] [nova] Should we delete the (unexposed) os-pci API?

Sean Dague sean at dague.net
Fri Mar 17 20:23:02 UTC 2017

On 03/17/2017 04:19 PM, Matt Riedemann wrote:
> I was working on writing a spec for a blueprint [1] that would have
> touched on the os-pci API [2] and got to documenting about how it's not
> even documented [3] when Alex pointed out that the API is not even
> enabled [4][5].
> It turns out that the os-pci API was added in the Nova V3 API and pulled
> back out, and [5] was a tracking bug to add it back in with a
> microversion, and that never happened.
> Given the ugliness described in [3], and that I think our views on
> exposing this type of information have changed [6] since it was
> originally added, I'm proposing that we just delete the API code.
> The API code itself was added back in Icehouse [7].
> I tend to think if someone cared about needing this information in the
> REST API, they would have asked for it by now. As it stands, it's just
> technical debt and even if we did expose it, there are existing issues
> in the API, like the fact that the os-hypervisors extension just takes
> the compute_nodes.pci_stats dict and dumps it to json out of the REST
> API with no control over the keys in the response. That means if we ever
> change the fields in the PciDevicePool object, we implicitly introduce a
> backward incompatible change in the REST API.
> So I move that we delete the (dead) code. Are there good reasons not to?
> [1]
> https://blueprints.launchpad.net/nova/+spec/service-hyper-pci-uuid-in-api
> [2]
> https://github.com/openstack/nova/blob/15.0.0/nova/api/openstack/compute/pci.py
> [3] https://bugs.launchpad.net/nova/+bug/1673869
> [4] https://github.com/openstack/nova/blob/15.0.0/setup.cfg#L132
> [5] https://bugs.launchpad.net/nova/+bug/1426241
> [6]
> https://docs.openstack.org/developer/nova/policies.html?highlight=metrics#metrics-gathering
> [7] https://review.openstack.org/#/c/51135/

Yes... with fire.

Realistically this was about the pinnacle of the extensions on
extensions API changes, which is why we didn't even let it into v2 in
the first place.


Sean Dague

More information about the OpenStack-dev mailing list