From 80c81738eddaeb9bcd1388a478170f2cc43f59f6 Mon Sep 17 00:00:00 2001 From: Tim O'Farrell Date: Tue, 23 Dec 2025 13:39:38 -0700 Subject: [PATCH] More resilience --- .../app_conversation/app_conversation_router.py | 16 +++++++++++----- .../app_server/event_callback/webhook_router.py | 4 ---- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/openhands/app_server/app_conversation/app_conversation_router.py b/openhands/app_server/app_conversation/app_conversation_router.py index a7a0414e31..13d5fa91c8 100644 --- a/openhands/app_server/app_conversation/app_conversation_router.py +++ b/openhands/app_server/app_conversation/app_conversation_router.py @@ -210,11 +210,17 @@ async def start_app_conversation( set_db_session_keep_open(request.state, True) set_httpx_client_keep_open(request.state, True) - """Start an app conversation start task and return it.""" - async_iter = app_conversation_service.start_app_conversation(start_request) - result = await anext(async_iter) - asyncio.create_task(_consume_remaining(async_iter, db_session, httpx_client)) - return result + try: + """Start an app conversation start task and return it.""" + async_iter = app_conversation_service.start_app_conversation(start_request) + result = await anext(async_iter) + asyncio.create_task(_consume_remaining(async_iter, db_session, httpx_client)) + return result + except Exception: + await db_session.close() + await httpx_client.aclose() + raise + @router.post('/stream-start') diff --git a/openhands/app_server/event_callback/webhook_router.py b/openhands/app_server/event_callback/webhook_router.py index 28236b7325..c359a9a7a2 100644 --- a/openhands/app_server/event_callback/webhook_router.py +++ b/openhands/app_server/event_callback/webhook_router.py @@ -21,12 +21,10 @@ from openhands.app_server.app_conversation.app_conversation_models import ( ) from openhands.app_server.config import ( depends_app_conversation_info_service, - depends_db_session, depends_event_service, depends_jwt_service, depends_sandbox_service, get_event_callback_service, - get_global_config, ) from openhands.app_server.errors import AuthError from openhands.app_server.event.event_service import EventService @@ -54,8 +52,6 @@ sandbox_service_dependency = depends_sandbox_service() event_service_dependency = depends_event_service() app_conversation_info_service_dependency = depends_app_conversation_info_service() jwt_dependency = depends_jwt_service() -config = get_global_config() -db_session_dependency = depends_db_session() _logger = logging.getLogger(__name__)