Index ¦ Archives ¦ Atom

Placement Update 19-34

Welcome to placement update 19-34. Feature Freeze is the week of September 9th. We have features in progress in placement itself (consumer types) and osc-placement that would be great to land.

Most Important

In addition to the features above, we really need to get started on tuning up the documentation so that same_subtree and friends can be used effectively.

It is also time to start thinking about what features, if any, need to be pursued in Ussuri. If there are few, that ought to leave time and energy for getting the osc-placement plugin more up to date.

And, there are plenty of stories (see below) that need attention. Ideally we'd end every cycle with zero stories, including removing ones that no longer make sense.

What's Changed

  • Tetsuro has picked up the baton for performance and refactoring work and found some improvements that have merged. There's additional work in progress (noted below).


(Numbers in () are the change since the last pupdate.)

There are 25 (2) stories in the placement group. 0 (0) are untagged. 5 (1) are bugs. 4 (0) are cleanups. 12 (1) are rfes. 4 (0) are docs.

If you're interested in helping out with placement, those stories are good places to look.


osc-placement is currently behind by 12 microversions.

  • Add support for multiple member_of. There's been some useful discussion about how to achieve this, and a consensus has emerged on how to get the best results.

  • Adds a new --amend option which can update resource provider inventory without requiring the user to pass a full replacement for inventory and an --aggregate option to set inventory on all the providers in an aggregate. This has been broken up into three patches to help with review. This one is very close but needs review from more people than Matt.

Main Themes

Consumer Types

Adding a type to consumers will allow them to be grouped for various purposes, including quota accounting.

I picked this up yesterday and hope to have it finished next week, barring distractions. I figure having it in place for nova for Ussuri is a nice to have.


Cleanup is an overarching theme related to improving documentation, performance and the maintainability of the code. The changes we are making this cycle are fairly complex to use and are fairly complex to write, so it is good that we're going to have plenty of time to clean and clarify all these things.

Performance related explorations continue:

One outcome of the performance work needs to be something like a Deployment Considerations document to help people choose how to tweak their placement deployment to match their needs. The simple answer is use more web servers and more database servers, but that's often very wasteful.

Discussions about using a different JSON serializer terminated choosing not to use orjson because it presents some packaging and distribution issues that might be problematic. There's still an option to use one of the other alternatives, but that exploration has not started.

Other Placement

Miscellaneous changes can be found in the usual place.

  • Merge request log and request id middlewares is worth attention. It makes sure that all log message from a single request use a global and local request id.

There are two os-traits changes being discussed. And zero os-resource-classes changes.

Other Service Users

New discoveries are added to the end. Merged stuff is removed. Anything that has had no activity in 4 weeks has been removed.


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