From 73de137779695cf9744fb41a64dfb7b66471b1aa Mon Sep 17 00:00:00 2001 From: chenjw28 <792430652@qq.com> Date: Sat, 26 Sep 2026 23:27:32 +0800 Subject: [PATCH] =?UTF-8?q?fix(processing):=20process=5Ffile=5Fcore=20?= =?UTF-8?q?=E7=BC=BA=20timeout=5Fseconds=20=E5=8F=82=E6=95=B0=E2=80=94?= =?UTF-8?q?=E2=80=94=E8=A7=A3=E6=9E=90=E5=BF=85=E6=8C=82=20NameError?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit process_file_core 内 4 处引用 timeout_seconds(run_occ / 网格 / 型腔 / 设计分析的步骤超时),但该变量定义在外层 process_file_with_storage (按文件大小计算超时处)。拆方法重构时漏传,解析第一步 run_occ("parse_stp") 即 NameError,任务标 failed,页面报 "name 'timeout_seconds' is not defined"。 修复:核心方法显式接收 timeout_seconds 参数(默认 300 兜底), 调用方传入。pyflakes 全仓库 F821 扫描确认无同类未定义名。 Co-Authored-By: Claude Code --- src/moldinsight/services/processing_service.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/moldinsight/services/processing_service.py b/src/moldinsight/services/processing_service.py index 4bc11eb..463d973 100644 --- a/src/moldinsight/services/processing_service.py +++ b/src/moldinsight/services/processing_service.py @@ -136,7 +136,8 @@ class ProcessingService: try: await asyncio.wait_for( self.process_file_core( - task_id, file_path, stp_file_id, db_session, process_params + task_id, file_path, stp_file_id, db_session, process_params, + timeout_seconds=timeout_seconds, ), timeout_seconds, ) @@ -178,8 +179,13 @@ class ProcessingService: stp_file_id: int, db_session: AsyncSession, process_params: Optional[Dict[str, Any]] = None, + timeout_seconds: float = 300, ): - """核心处理逻辑""" + """核心处理逻辑 + + timeout_seconds:OCC 子进程各步骤的超时,由调用方按文件大小计算 + (曾因重构拆方法时漏传此参数,4 处引用 NameError,解析必挂)。 + """ try: logger.info(f"开始处理文件并生成模具型腔: {file_path}")