Fix update bundle
This commit is contained in:
@@ -641,11 +641,16 @@ public class BacktestExecutor
|
||||
var failedJobs = jobs.Count(j => j.Status == JobStatus.Failed);
|
||||
var runningJobs = jobs.Count(j => j.Status == JobStatus.Running);
|
||||
var totalJobs = jobs.Count();
|
||||
|
||||
|
||||
// Update bundle request progress (always update counters regardless of status)
|
||||
bundleRequest.CompletedBacktests = completedJobs;
|
||||
bundleRequest.FailedBacktests = failedJobs;
|
||||
bundleRequest.UpdatedAt = DateTime.UtcNow;
|
||||
|
||||
// CRITICAL: If bundle is already in a final state (Completed/Failed with CompletedAt set),
|
||||
// don't overwrite it unless we're detecting a legitimate change
|
||||
if (bundleRequest.CompletedAt.HasValue &&
|
||||
(bundleRequest.Status == BundleBacktestRequestStatus.Completed ||
|
||||
if (bundleRequest.CompletedAt.HasValue &&
|
||||
(bundleRequest.Status == BundleBacktestRequestStatus.Completed ||
|
||||
bundleRequest.Status == BundleBacktestRequestStatus.Failed))
|
||||
{
|
||||
// Bundle already finalized, only update if job counts indicate it should be re-opened
|
||||
@@ -655,7 +660,8 @@ public class BacktestExecutor
|
||||
_logger.LogDebug(
|
||||
"Bundle {BundleRequestId} already completed/failed. Skipping status update.",
|
||||
bundleRequestId);
|
||||
return; // Don't modify a completed bundle
|
||||
// Progress counters already updated above, just return
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -666,10 +672,6 @@ public class BacktestExecutor
|
||||
}
|
||||
}
|
||||
|
||||
// Update bundle request progress
|
||||
bundleRequest.CompletedBacktests = completedJobs;
|
||||
bundleRequest.FailedBacktests = failedJobs;
|
||||
|
||||
// Update status based on job states
|
||||
if (completedJobs + failedJobs == totalJobs)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user