Add an new Olso Messaging executor using asyncio
The Enovance company is working actively on porting OpenStack on Python 3, see the status on the Python3 page. Eventlet dependency blocks the portage because it is not yet compatible with Python 3. Even if it would be available, we would like to get ride of eventlet for the reasons listed below.
We choose to start the work in the Olso Messaging project because its design allows to use different "executor drivers", a function to run a task asynchronously. Olso Messaging is a core component and so should be ported on Python 3 first to be able to port other components on Python 3.
The asyncio module is a new and modern asynchronous library which is part of the Python 3.4 standard library. The idea is to add a new asyncio executor to Olso Messaging. At the beginning, asyncio will reuse the greenlet event loop. If an OpenStack server doesn't use eventlet anymore, it will be possible to use an asyncio event loop.
Full specifications:
https:/
Superseded by:
https:/
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Victor Stinner
- Direction:
- Needs approval
- Assignee:
- Victor Stinner
- Definition:
- Superseded
- Series goal:
- None
- Implementation:
- Needs Code Review
- Milestone target:
- None
- Started by
- Victor Stinner
- Completed by
- Victor Stinner
Related branches
Related bugs
Sprints
Whiteboard
Hi victor,
There's already a blueprint for the asyncio work with some comments in it. Would you like to chime in there? https:/
If you're willing to work on this, I'm happy to give it to you.
-- flaper87
Gerrit topic: https:/
Addressed by: https:/
Add a new asynchronous executor based on Trollius