Sql
一次 MySQL 慢查询优化实战:从索引试错到 …
一个 WMS 波次计划列表查询一页数据需要约 6 秒。这篇文章记录实际排查路径:从应用日志拿到真实 SQL,检查现有索引,测试并回退无效索引,最后验证新的 SQL 执行结构。
文中的环境和业务标识均已脱敏,SQL 结构、耗时数据和判断过程来自实际排查。
慢查询的执行结构
页面需要查询波次主表,关联明细与出库单,聚合 OMS 订单号和 Homebase,关联创建人、修改人信息,并查询装车时间,最后按创建时间倒序返回 50 条。
日志中的关键筛选条件是修改时间范围、组织和项目条件,同时按照创建时间排序。
问题就在这里:SQL 在确定页面最终需要的 50 个波次前,已经开始展开明细、聚合并排序。
先 …
最近工作中处理的几个 Bug
最近一段时间,我处理了不少物流系统里的小问题。它们单独看都不算复杂,但麻烦的地方在于:同一个页面、状态、接口、数据库字段,可能会被多个业务步骤同时使用。
这篇记录几个最近工作里比较典型的 Bug 修改。
1. 费用详情不是所有状态都能编辑
其中一个问题出现在费用详情页。预期规则很明确:只有费用状态是 NEW 或 REJECTED 时,才允许编辑费用详情。
实际情况是,某些后续状态的数据,比如 RELEASED_FINANCE,仍然可以打开编辑框。这就有风险,因为费用一旦进入财务流程,再被用户修改,后面的确认、对账、接口同步都可能出问题。
这个修改不能只隐藏按钮。我需要继续看前端打开编辑框的事件 …