研发经验与问题复盘
记录可复用的排查方法、根因分析、技术决策、兼容性经验和改进措施。
复盘 2026-08-02 站管家报价故障,确认首发在 sale 到 basedata 的级联超时,并解释为何必须先后重启 basedata 和 sale 才恢复。
02 Git 远端分支误删后恢复最后提交版本远端 Git 分支被误删,本地没有该分支引用,但 Jenkins 曾经构建过该分支,需要恢复到最后一次构建时的代码版本。若用户不希望继续使用原分支名,恢复时使用新的 restore/ 分支名。
03 DGJ2 项目日志优化记录持续记录 DGJ2 AI 报价与 RobotInquiry 日志的原始形态、量级、优化方式、排查能力和上线验证结果。
04 DGJ2 日志优化前后对比报告基于 bugfix/20260827-log 当前代码、26/27 号生产服务器实际日志文件和已验证链路样本,说明 DGJ2 AI 报价日志优化的代码变化、节点证据、文件大小对比、排查能力、风险与下一步方案。
05 采购退货退款 MQ 乱序与幂等补偿复盘复盘采购退货退款完成消息早于退款申请状态消息到达,导致退款金额已入待退款账户但采购退货单仍停留在待退款的问题,并沉淀线上 MQ 补偿、数据库只读核验和状态机优化方法。
06 采购订单未发货关闭按采购明细 ID 聚合排查记录采购订单未发货关闭列表因同物料多采购明细而漏行/数量错误时的排查链路、最小修复和验证方法,重点定位 InvPoModel::queryInvPoInfo。
07 Kibana 查询与 VPN/DNS 排查经验沉淀 Kibana 通过公司 VPN 查询日志时的网络核验、Frozen 索引查询、Discover 数据视图识别、Python DNS 失败修复、精确索引查询和跨服务证据链方法。
08 SAAS/DGJ 出库双协议重复累计故障复盘同一次 DGJ 出库曾在一个 addOutBound() 业务流程中同时发送旧事件 app_sa_order_out 和新事件 garage_repair_outbound_created。SAAS 为两类事件注册了不同消费者,两边都先查询 t_order_out_flow 再累计订单/明细出库数量
09 SAAS 订单最近采购明细不更新排查经验t_order_recent_detail 不更新时,不能只看数据库分表是否存在,要按“Canal 过滤器 → Kafka Topic → watchSaasOrder 消费 → 最近采购表写入”顺序排查。
10 SAAS 机器人下单 Consul 服务发现故障复盘机器人下单消息已进入 SAAS,但普通订单在地址区域名称回填时调用 BaseData 的 RegionInterface,因服务发现没有可用节点而失败。根因不是 BaseData 数据未迁移,而是 SAAS 迁出 Kubernetes 后接入了看不到 BaseData 注册信息的错误 Consul
11 预发 DDL 与配置中心变更流程本文沉淀多项目、多 schema、配置中心和 OA 同时变更时的通用执行方法,重点解决“目标库不明确、DDL 重复执行、配置和代码口径不一致、执行后没有读回验证”的问题。
12 Docker Desktop 迁移 Colima 与本地服务恢复本文沉淀 docker dev env 从 Docker Desktop 迁移到 Colima 后的安全恢复、验证和清理流程,适用于 DGJ2、SAAS、MySQL、OpenResty、PHP、Redis、RabbitMQ 等本地服务。