Index ¦ Archives ¦ Atom

Placement Update 19-09

Here's another placement update. It was feature freeze this week so people are probably a bit worn, I'll try to keep this light and quick.

Most Important

We need to decide if we want to do what amounts to a feature freeze exception for Tetsuro's negative member-of handling linked below and work out how/when to fit Mel's allocation ratio work on osc-placement (also below) into the world so people can use it. If people have placement related forum sessions they would like to see happen the deadline is either today (March 8th) or Monday, depending on which and how you read various pieces of info. Matt has already set up an extraction-related session.

It's also important to be thinking about how placement would like to engage (as a group) with the PTG.

If you want to run for PTL (of placement or anything else) the deadline is 23:45 UTC, 12 March.

What's Changed

  • The refactoring of the objects/ file into smaller, more single-purpose files, continues to merge. In case anyone is feeling like this is a lot of churn for little purpose, it does have purpose: This is making the code more accessible to people who aren't familiar with it. It is also providing a good review (a variety of warts and bugs and have been found and fixed) of stale code.

  • pep8's whitespace handling has been turned back on in placement. We inherited the exceptions to the rules from nova, where fixing for those rules would have been messy. In placement it wasn't that much of a big deal.

  • A conf setting [placement_database]/sync_on_startup has been added. Defaults to False. If True, the web service process will attempt the equivalent of placement-manage db sync at startup.

  • Improved debug logging when requesting allocation candidates, so that operators can more accurately determine what requirement led to reduced or no available hosts.

  • 1.5.0 of osc-placement was released. It now goes up to microversion 1.18 (filter resource providers by required traits). (Note to everyone: We should make the info that shows up on PyPI more useful, by changing the README).

  • VGPU reshaping for libvirt merged!


Near to Done

Not yet Done

These will get punted to Train.

Not yet Approved


There is a storyboard project group for placement projects. Through to the end of Stein we'll be paying attention to both it and Launchpad. The sole story in storyboard right now is updating docs to indicate we are using storyboard. So meta!

In launchpad:

That large drop on in progress is because I went through and caught up those bugs which had fixes committed but had not been automatically updated.


osc-placement is currently behind by 13 microversions.

Pending changes:

Main Themes


  • VGPU reshaping for libvirt merged!

  • The bandwidth-resource-provider topic has merged a vast amount of code but there is some left. Some of it may still merge in Stein, but the rest will be for Train. The microversion (2.72 provides the API-level bits to allow booting a host with a minimum bandwidth requirement.

    At least some of the remaining changes will be backported.

There were no nibbles on last week's plea, so I'll say again: If anyone reading this is in a position to provide third party CI with fancy hardware for NUMA, NFV, FPGA, and GPU related integration testing with nova, there's a significant need for that.


The work that removed oslo.versionedobjects then moved on to removing the List classes (e.g. AllocationList) in favor of using native Python lists and breaking up the file into smaller files. The first portion of that (scrub-Lists) merged. The next stage is on cd/de-list-phase2.

This will continue until each type has its own file.

Other Placement

Other Service Users

(If you stick "placement" somewhere in your commit message I'll probably eventually find your in-progress placement-related changes.)


Not Nova


Go forth and document and bug fix and raise a full and flavorful stein.

© Chris Dent. Built using Pelican. Theme by Giulio Fidente on github.