# xp-robotaxi-maintenance-boot 代码问题分析 本文档记录了对该模块代码实现中发现的问题。 ## 问题列表 ### `RoutineTaskExpireCheckScheduleTask.java` **1. 性能问题** (line 159-163): - 每分钟都查询所有过期任务,不管是否已经处理过 - 如果数据库中有成千上万条过期任务,会一次性加载到内存,有 OOM 风险 - 应该分页查询处理,避免一次性加载全部 **2. 竞态条件 / 并发问题** (line 165-173): - 多个定时任务实例(集群部署)可以同时查询和更新同一个过期任务 - "检查然后更新" 不是原子操作 - 如果多个实例同时运行,可能导致重复发送通知 - 应该使用数据库乐观锁或行级锁来避免 **备注**: 更新时 WHERE 条件会重新检查 `expiredNoticeSent = 0`,这个问题实际上有所缓解,但仍然存在竞态窗口