修复Redis MISCONF导致Celery写入失败

Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
2026-05-03 11:32:06 +08:00
parent b402b77b06
commit 7b79e12254
5 changed files with 52 additions and 3 deletions
+24 -1
View File
@@ -146,7 +146,6 @@
- 风险与影响:
- 删除数据集会同时删除其关联的回填任务记录(仅记录,不会回滚已写入杆塔的高程值)。
- 若数据集存在运行中任务,接口会拒绝删除并提示先等待任务结束。
## Work Log - 高程数据管理支持批量导入(2026-05-03)
- 背景:
@@ -217,3 +216,27 @@
- 风险与影响:
- 影响范围:仅 Flower 代理鉴权配置注入,不改业务代码与数据。
- 若部署环境仍存在多层 env 覆盖(例如 `.images.env`),需确保最终生效值在 `api``flower` 一致。
## Work Log - 修复 Redis MISCONF 导致 Celery 写入失败(2026-05-03
- 背景:
- Issue `FL-181` 报错:`redis.exceptions.ResponseError: MISCONF Redis is configured to save RDB snapshots, but it's currently unable to persist to disk`
- 该错误会触发 Redis 写保护,导致 Celery 控制命令与任务相关写入失败。
- 根因:
- 部署配置使用 `redis-server --appendonly yes`,默认仍启用 RDB 快照。
- 当宿主磁盘/权限导致 RDB 持久化失败时,Redis 默认 `stop-writes-on-bgsave-error=yes` 会拒绝写请求,连带 Celery 报 `kombu.exceptions.OperationalError`
- 本次改动(最小闭环):
- 文件:`deploy/dev-deploy/compose.yml`
- 文件:`deploy/pro-deploy/compose.yml`
- 将 Redis 启动参数调整为:
- `appendonly yes`(保留 AOF 持久化)
- `save ""`(关闭 RDB 快照)
- `stop-writes-on-bgsave-error no`(避免快照异常触发全局写阻断)
- 文件:`.env.example`
- 补充 Redis 持久化策略说明,明确上述运行口径。
- 风险与影响:
- 影响面:仅 Redis 容器启动参数与部署说明。
- 风险:关闭 RDB 后,Redis 数据恢复主要依赖 AOF;当前场景下可避免 Celery 因 RDB 异常整体不可写。