refactor: update session cleanup logic and extend command timeout
Some checks failed
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/amd64, build-api-amd64) (push) Has been cancelled
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/arm64, build-api-arm64) (push) Has been cancelled
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/amd64, build-web-amd64) (push) Has been cancelled
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/arm64, build-web-arm64) (push) Has been cancelled
Build and Push API & Web / create-manifest (api, DIFY_API_IMAGE_NAME, merge-api-images) (push) Has been cancelled
Build and Push API & Web / create-manifest (web, DIFY_WEB_IMAGE_NAME, merge-web-images) (push) Has been cancelled

- Changed the command timeout duration from 60 seconds to 1 hour for improved session stability.
- Refactored session cleanup logic to utilize the CLI API session object instead of session ID, enhancing clarity and maintainability.
This commit is contained in:
Harry
2026-01-21 21:19:37 +08:00
parent 0ac847fb3c
commit aac90133d6
2 changed files with 5 additions and 5 deletions

View File

@@ -18,7 +18,7 @@ from core.virtual_environment.__base.virtual_environment import VirtualEnvironme
from ..utils.debug import sandbox_debug
COMMAND_TIMEOUT_SECONDS = 60
COMMAND_TIMEOUT_SECONDS = 60 * 60
class SandboxBashTool(Tool):

View File

@@ -109,10 +109,10 @@ class SandboxBashSession:
tb: TracebackType | None,
) -> bool:
try:
if self._session_id is not None:
CliApiSessionManager().delete(self._session_id)
logger.debug("Cleaned up SandboxSession session_id=%s", self._session_id)
self._session_id = None
if self._cli_api_session is not None:
CliApiSessionManager().delete(self._cli_api_session.id)
logger.debug("Cleaned up SandboxSession session_id=%s", self._cli_api_session.id)
self._cli_api_session = None
except Exception:
logger.exception("Failed to cleanup SandboxSession")
return False