Python 任务全标 failed 却不报错?try/except 吞掉了异常
在 RAG 知识库项目中排查文档同步任务全部标记 failed 的静默故障,以下是完整排查过程。
TL;DR
重构一个公共方法改了参数签名,但漏改了一个调用方。调用方按旧契约传参抛 TypeError,而这个调用被包在 try/except 里,异常被悄悄吞进 failed 计数——服务不崩溃、日志没有 ERROR,只有计数字段悄悄上涨。这类「静默故障」是最难查的 bug。两个解法:重构签名后 grep 所有调用方同步;except 块必须记日志或重抛,绝不静默吞掉。