mode
mode copied to clipboard
Pass loop attribute to asyncio.ensure_future
If we specify a custom event loop at worker instantiation, it has to also be used by asyncio instead of default one.
Description
In some situation (for example in integration tests of Faust agents), I have to retry worker startup because kafka is not yet available.
But the first time I run execute_from_commandline
, the default event loop is closed so I have to create a new one before calling execute_from_commandline
again.
Unfortunately, custom event loop is not properly transmitted to asyncio, so it automatically makes use of default event loop and raise a RuntimeError('Event loop is closed')
.
With this simple fix, user-specified event loop will be properly transmitted to asyncio.
Any updates on this MR?
I'm most likely facing the exact same problem. Any ideas for a temporary workaround?