fix(backend): REST 计划列表会扫描整个作业存储区,以显示暂停的计划
作者: Pwuts创建于 2026年9月16日更新于 2026年9月16日
现在通过 REST 列出计划时,会扫描整个作业存储,因为显示暂停的计划需要 include_paused=True,而该路径不经过过滤。list_graph_execution_schedules 和 list_all_graphs_execution_schedules(backend/api/features/schedules/routes.py:100-130)传递了 include_paused=True,这样暂停的计划才能在 UI 中显示 - 这是 #14416 的目标。该标志调用了 Scheduler._get_jobs_cached(),这是一个未过滤的 apscheduler_jobs 扫描,在文档中将其命名为 Sentry 缓慢查询,而不是通过 SQL 过滤的 _get_active_jobs_cached()。5 秒的 TTL 限制了它,因此成本是每个窗口一个多秒钟的读取,而不是每个请求,但该读取现在位于面向用户的列表前面,并且随着计划历史的增长而增长,而不是随着用户的操作。
内容来源: Significant-Gravitas/AutoGPT