Remove unused network_api.get_instance_uuids_by_ip_filter()

Last usage was removed in ae781ee97947c33d6d43e4c21df4f338c875bf1c

Change-Id: I33dc14085ca0c887778c7379f0498714e8d30425
Small cleanup in db.sqlalchemy.api.action_finish()

This function was pulling back a row, updating the returned object,
then returning a reference to it. This potentially races, as the
object may be updated in another transaction after fetching. In
practise it's probably fine, but the new code is more obviously
correct, and probably slightly nicer to sqlalchemy.

Change-Id: I879e973180278faa51e664d526d75e5f095a64ea
VMware: make use of oslo.vmware pbm_wsdl_loc_set

Make use of the oslo.vmware method for setting a defined wsdl.

Change-Id: I207f0e737139c06c5b1ea9019cfbf4659aa5ca1a
Fix spelling error in compute api

Change-Id: Ie6b2d998dea6c5b9c7d3eee9c1c01f9169679451
libvirt: disk_bus setting is being lost when migration is reverted

finish_revert_migration() should use image_meta, if it exist,
when constructing the disk_info.

Closes-Bug: #1389850
Change-Id: Ia373771eaaad4154a2aa0695bf3878713a68dd9f
hardware: add method to return requested memory page size

Introduces method to return requested memory pages size.
This commit also add a new exceptions MemoryPageSizeInvalid and
MemoryPageSizeForbidden

Work-Item: Enhance libvirt driver to configure guests based on
           the flavour parameter for page sizes

Partial-Implement: blueprint virt-driver-large-pages
Change-Id: I94e63159ee5539ed7b947614ff0ec87182f184a4
Handle invalid sort keys/dirs gracefully

If an invalid sort key or sort direction is supplied on a GET servers
REST API call, the API returns an error code 500 with the "The server
has either erred or is incapable of performing the requested
operation." message.

This is occurring because the exceptions raised in
oslo.db.sqlalchemy.utils.paginate_query are not caught and handled in
nova.

paginate_query raises oslo.db.exception.InvalidSortKey for an invalid
sort key and raises a ValueError for an invalid sort direction.

Change-Id: I42ceaa461ddbf33dde44355d0cb0fb752c361f2f
Closes-Bug: 1403230
Add pci_device_pools to ComputeNode object

The compute_nodes table has a field called pci_stats
that is used to pass pci device availability to the
scheduler. The pci device data is obtained by the virt
drivers and passed to the resource tracker in the available
resource data. The resource tracker creates pci device pools
to track the number of similar devices as a resource.

The pci_stats field contains the pci pool data.

A new object versioned called PciDevicePool has been created
for the pci device pool data. The pci_device_pools field is added
to the ComputeNode object as a PciDevicePoolList object.
The type of the field is:

    ObjectField('PciDevicePoolList')

The format that the PciDevicePool object uses to store data in the
database is made backward compatible with the existing format.

There was an alternative patch by yjiang5 that does not version
the data in the field, this patch replaces that one. The original
can be found here Ifde89b209f2fcc2283894195b1e7e866cf28dccb

Co-Authored-By: Paul Murray <pmurray@hp.com>
Co-Authored-By: yunhong-jiang <yunhong-jiang@intel.com>
Co-Authored-By: Ed Leafe <ed@leafe.com>

Change-Id: I625f13061fddfb0cdb16c8e36336656b40696447
Merge "Remove unused network_api.get_instance_uuids_by_ip_filter()"
Merge "Handle invalid sort keys/dirs gracefully"
Merge "Add pci_device_pools to ComputeNode object"
Merge "VMware: make use of oslo.vmware pbm_wsdl_loc_set"
Merge "hardware: add method to return requested memory page size"
Merge "Fix spelling error in compute api"
Merge "Small cleanup in db.sqlalchemy.api.action_finish()"
Merge "libvirt: disk_bus setting is being lost when migration is reverted"