fix(queue): 重新调度终态 River 任务
等待异步准入的任务只跳过仍处于活跃状态的 River Job;missing 或 terminal Job 交由准入调度器重新创建,避免非空 river_job_id 永久阻断旧任务。\n\n通用 River 恢复排除等待准入任务,消除双恢复循环与误导日志;事务回滚继续使用独立有界上下文。\n\n验证:真实 PostgreSQL 下异步 Worker 准入验收和跨 Store 队列集成测试均通过。
This commit is contained in:
@@ -947,6 +947,12 @@ WHERE task.async_mode = true
|
||||
OR job.id IS NULL
|
||||
OR job.state NOT IN ('available', 'pending', 'retryable', 'running', 'scheduled')
|
||||
)
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM gateway_task_admissions admission
|
||||
WHERE admission.task_id = task.id
|
||||
AND admission.status = 'waiting'
|
||||
)
|
||||
ORDER BY task.priority ASC, task.created_at ASC
|
||||
LIMIT $1`, limit)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user