We are happy to announce the release of: oslo.service 4.8.0 This release is part of the hibiscus release series. The source is available from: https://opendev.org/openstack/oslo.service Download the package from: https://pypi.org/project/oslo.service Please report issues through: https://bugs.launchpad.net/oslo.service/+bugs For more details, please see below. 4.8.0 ^^^^^ Upgrade Notes ************* * Applications relying on the threading backend's brief automatic selection of "spawn" must now request it explicitly. Existing applications that relied on workers inheriting parent-process state keep the historical "fork" behavior. Bug Fixes ********* * The threading backend once again uses "fork" by default on platforms where it is available. A service and its configuration being picklable does not guarantee that application state initialized in the parent process is available in a fresh "spawn" worker. Applications that are fully spawn-safe can opt in with "service.launch(..., start_method="spawn")". On platforms without "fork", "spawn" remains the default. Explicit spawn requests validate that the service and "ConfigOpts" can be serialized. Changes in oslo.service 4.7.0..4.8.0 ------------------------------------ f402f4e Keep fork as the default multiprocessing method 064dcc8 Ensure extra dependency for bandit to use toml 1d25fb9 Add fork-safety regression tests and CI job for spawn multiprocessing Diffstat (except docs and test files) ------------------------------------- .pre-commit-config.yaml | 1 + .zuul.yaml | 14 + oslo_service/backend/_threading/service.py | 111 +++--- .../functional/test_fork_safety_regression.py | 380 +++++++++++++++++++++ ...tiprocessing-start-method-5f8702b62dfe3c9a.yaml | 18 + tox.ini | 12 + 11 files changed, 664 insertions(+), 84 deletions(-)
participants (1)
-
no-reply@openstack.org