Deprecate unlimited compute actions

We already deprecated the unlimited max_concurrent_live_migrations
config value and now we do the same for max_concurrent_builds and
max_concurrent_snapshots as well. The reason is similar.
* The unlimited meaning was a lie, it was limited by other constructs in
  the code. For these option the limit was the size of the RPC executor
  defaulted to 64.
* In native threading mode having unlimited concurrent tasks is
  unfeasible due to the memory cost of native threads for each task.

The deprecation is done in a way that in eventlet mode we keep a similar
behavior as before but in native threading mode we enforce a strict
maximum even if unlimited is requested.

Change-Id: Ibbf76c2c85729820035c9791719bf2c864bce12b
Signed-off-by: Balazs Gibizer <gibi@redhat.com>
This commit is contained in:
Balazs Gibizer
2026-02-05 18:11:06 +01:00
parent 00f554fd92
commit efd61188c1
4 changed files with 112 additions and 39 deletions
@@ -18,6 +18,24 @@ upgrade:
higher value explicitly before the upgrade. Please read the
`concurrency <https://docs.openstack.org/nova/latest/admin/concurrency.html>`__
guide for more details.
- |
The meaning of the 0 value of the config option
``[DEFAULT]max_concurrent_builds`` has been changed. In the past
it meant "unlimited" but actually it was limited by the oslo.messaging's
``executor_thread_pool_size`` config option. For eventlet mode "unlimited"
now means 1000 concurrent builds. For the native threading mode it is
now reduced to 10 native threads. Please also read the `concurrency
<https://docs.openstack.org/nova/latest/admin/concurrency.html>`__
guide for more details.
- |
The meaning of the 0 value of the config option
``[DEFAULT]max_concurrent_snapshots`` has been changed. In the past
it meant "unlimited" but actually it was limited by the oslo.messaging's
``executor_thread_pool_size`` config option. For eventlet mode "unlimited"
now means 1000 concurrent snapshots. For the native threading mode it is
now reduced to 5 native threads. Please also read the `concurrency
<https://docs.openstack.org/nova/latest/admin/concurrency.html>`__
guide for more details.
deprecations:
- |
The possible 0 value of the configuration option
@@ -26,3 +44,11 @@ deprecations:
default value, 1, of this config option. If more performant live migration
is needed, use the ``live_migration_parallel_connections`` config option
instead.
- |
The possible 0 value of the configuration option
``[DEFAULT]max_concurrent_builds`` is deprecated and will be
removed in a future release.
- |
The possible 0 value of the configuration option
``[DEFAULT]max_concurrent_snapshots`` is deprecated and will be
removed in a future release.