现象
私有部署版本4.8.13-fix的FastGPT中,直接使用LLM生成的SQL语句可正常运行。当添加代码运行块并使用正则提取SQL本体后,运行流程报错,提示文本为"Can't add new command when connection is in closed state",且显示数据库连接提前关闭。
可能原因
目前无明确官方说明,需结合实际部署环境排查,可能与代码运行块执行过程中对数据库连接的处理异常相关。
排查步骤
- 验证LLM生成的原生SQL语句可直接正常执行,无数据库连接相关报错。
- 移除代码运行块及正则提取逻辑,复现基础调用流程,确认基础配置是否正常。
- 检查数据库连接池的相关配置,需按实际环境确认参数合理性。
- 查看完整运行日志,定位数据库连接关闭的具体触发节点。
解决与验证
调整代码运行块的执行逻辑,确保数据库连接在SQL提取与执行流程中未被提前释放。完成调整后,重新配置包含正则提取的代码运行块,运行完整流程,确认不再出现指定报错,且SQL语句可正常执行。
来源: FastGPT 官方来源
适用性与版本范围
本页适用于官方来源记录的 故障排查 场景。执行变更前,需核对 FastGPT、依赖、API 与部署版本。
安全护栏
凭证与私密数据使用 [REDACTED_CREDENTIAL] 占位符。执行操作前需核对文档的环境与版本。
回滚指引
恢复变更前的技术内容权威快照、已保存配置与数据快照,再执行最小验证场景。