fix: add 60s cooldown between symlink download retries
When the symlink downloader cannot find files on the rclone mount (because the CDN hasn't populated yet), wait 60 seconds before retrying to avoid thrashing the mount with repeated searches.
This commit is contained in:
parent
88dcb9aa60
commit
08ea902c68
1 changed files with 9 additions and 3 deletions
|
|
@ -1,4 +1,4 @@
|
|||
using System.Collections.Concurrent;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Diagnostics;
|
||||
using System.Text.Json;
|
||||
using Aria2NET;
|
||||
|
|
@ -216,9 +216,15 @@ public class TorrentRunner(
|
|||
|
||||
if (download.RetryCount < download.Torrent.DownloadRetryAttempts)
|
||||
{
|
||||
Log($"Retrying download", download, download.Torrent);
|
||||
var retryDelay = download.Torrent.DownloadClient == Data.Enums.DownloadClient.Symlink
|
||||
? TimeSpan.FromMinutes(1)
|
||||
: TimeSpan.Zero;
|
||||
|
||||
await downloads.Reset(downloadId);
|
||||
var retryAt = DateTimeOffset.UtcNow.Add(retryDelay);
|
||||
|
||||
Log($"Retrying download at {retryAt:u}", download, download.Torrent);
|
||||
|
||||
await downloads.Reset(downloadId, retryAt);
|
||||
await downloads.UpdateRetryCount(downloadId, download.RetryCount + 1);
|
||||
}
|
||||
else
|
||||
|
|
|
|||
Loading…
Reference in a new issue