[TODO] Schedule handler execution asynchronously
webknjaz opened this issue · 1 comments
webknjaz commented
Current router interface:
- Requires awaiting until all the event handlers finished before returning HTTP response to GitHub which will time out if it takes more than 30s. It should respond immediately and the handlers should not block this.
- If there's more than one handler found for the given event, they are executed sequentially, one by one. We should switch to doing something like
await asyncio.gather(*many_handlers_here)
or just schedule-and-forget all handlers.
The router code is currently a part of GidgetHub. We need to implement own router inside octomachinery and use it instead now.
Upvote & Fund
- We're using Polar.sh so you can upvote and help fund this issue.
- We receive the funding once the issue is completed & confirmed by you.
- Thank you in advance for helping prioritize & fund our backlog.