-
Story
-
Resolution: Unresolved
-
Critical
-
None
-
None
-
None
-
3
-
False
-
-
False
-
rhos-ops-platform-services-pidone
-
-
-
Sprint 9, Sprint 10, Sprint 11, Sprint 12
-
4
-
Important
Goal: Replace every direct Pool or Context usage in service.py (ProcessLauncher and respawn logic) with the new helpers to avoid threading-lock inheritance during worker respawn.
Acceptance Criteria:
- Verify service.py imports only get_spawn_pool / get_spawn_context for multiprocessing.
- Verify worker restart flow (_respawn_children) spawns processes without using fork start method.
- Run functional test: start a fake service that holds a logging lock, trigger a respawn, and confirm no deadlock.
- Code compiles with Python 3.12.
Additional Details:
See https://pythonspeed.com/articles/python-multiprocessing/ and video explanation at https://youtu.be/RIc-Tut95YM?t=185.
- blocks
-
OSPRH-17385 Remove eventlet from the Cinder components
-
- In Progress
-
-
OSPRH-17945 [fork vs multiprocessing] 7 - Add internal documentation & release notes for spawn migration
-
- Backlog
-
- is blocked by
-
OSPRH-17937 [fork vs multiprocessing] 1 - Introduce oslo_service._multiprocessing spawn-safe helpers
-
- Closed
-
- is depended on by
-
OSPRH-19257 investigate c-vol with multibackend in threading mode
-
- In Progress
-