feat(api, Core, TaskReconciliationWorker): Воркер обработки зависших задач. Доработка логики.
This commit is contained in:
@@ -98,12 +98,15 @@ namespace PARR.Core.Services.Task.Implementations
|
||||
|
||||
return await taskRepository.Get()
|
||||
.Where(t =>
|
||||
t.TypeCode == taskType.Code && t.DateModified < timeoutThreshold &&
|
||||
(
|
||||
//t.TypeCode == taskType.Code && t.DateModified < timeoutThreshold &&
|
||||
t.TypeCode == taskType.Code
|
||||
// если это вновь созданная задача и она упала, то у нее может не быть DateModified, тогда сравним с DateCreated
|
||||
&& (t.DateModified ?? t.DateCreated) < timeoutThreshold
|
||||
&& (
|
||||
// Зависла в Processing
|
||||
t.StatusCode == TaskItemStatusEnum.Processing
|
||||
//Зависли в Pending
|
||||
|| (t.StatusCode == TaskItemStatusEnum.Pending && t.RetryCount > 0)
|
||||
|| (t.StatusCode == TaskItemStatusEnum.Pending /*&& t.RetryCount > 0*/)
|
||||
)
|
||||
)
|
||||
.OrderBy(t => t.DateModified) // Сначала самые старые
|
||||
|
||||
Reference in New Issue
Block a user