[26.0] Fix event loop blocking in async API routes#22202
Open
mvdbeek wants to merge 1 commit intogalaxyproject:release_26.0from
Open
[26.0] Fix event loop blocking in async API routes#22202mvdbeek wants to merge 1 commit intogalaxyproject:release_26.0from
mvdbeek wants to merge 1 commit intogalaxyproject:release_26.0from
Conversation
Async def route handlers were calling synchronous DB queries, DNS lookups, and HTTP APIs directly on the event loop, blocking all concurrent requests on the same worker. - chat.py: use await agent.run() instead of agent.run_sync(), use AsyncOpenAI instead of sync openai client, wrap all chat_manager and job_manager DB calls with anyio.to_thread.run_sync - agents.py: wrap chat_manager/job_manager DB calls in analyze_error and create_custom_tool with anyio.to_thread.run_sync - proxy.py: wrap _validate_url_and_access (blocking socket.getaddrinfo) with anyio.to_thread.run_sync - error_analysis.py: wrap job_manager.get_accessible_job with anyio.to_thread.run_sync
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Async def route handlers were calling synchronous DB queries, DNS lookups, and HTTP APIs directly on the event loop, blocking all concurrent requests on the same worker.
How to test the changes?
(Select all options that apply)
License