返回 Bug 清单
BUG-0320project-45高待处理backend-logic
Go 服务启动时 DB 单次连接失败即静默降级内存模式 —— postgres 未 ready 导致 repo 永远 nil
发现:2026-10-01验证:2026-10-09置信度:70%
症状
docker compose 启动时 sandbox/user-auth 比 postgres 先起,单次连接失败后永久走内存模式——重启 postgres 后服务不自愈,重启服务才能恢复
根因
compose 的 depends_on 只保证容器启动顺序不保证 postgres 就绪;服务启动时单次 db.Connect 失败就直接 fallback 内存模式且不再重试,把瞬时不可用固化成永久降级
修复方案
启动阶段改为重试循环(最多 10 次 × 3s),全部失败才降级内存模式并打 warning 日志;sandbox 与 user-auth 两个服务同步修复
错误签名
数据库不可用,使用内存模式 db.Connect 重试 compose postgres 未 ready repo nil技术信息
来源项目
project-45
标签
project-45, mcp-reported