1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2026-04-21 22:05:38 -04:00

Prevent back-off escalation during grace period.

This commit is contained in:
Taloth Saldono
2017-06-17 23:42:04 +02:00
parent 87f3cc9014
commit 1fbe82ae47
2 changed files with 58 additions and 4 deletions
@@ -93,14 +93,18 @@ namespace NzbDrone.Core.ThingiProvider.Status
var status = GetProviderStatus(providerId);
var now = DateTime.UtcNow;
status.MostRecentFailure = now;
if (status.EscalationLevel == 0)
{
status.InitialFailure = now;
status.EscalationLevel = 1;
escalate = false;
}
status.MostRecentFailure = now;
if (escalate)
var inGracePeriod = (status.InitialFailure.Value + MinimumTimeSinceInitialFailure) > now;
if (escalate && !inGracePeriod)
{
status.EscalationLevel = Math.Min(MaximumEscalationLevel, status.EscalationLevel + 1);
}
@@ -113,7 +117,7 @@ namespace NzbDrone.Core.ThingiProvider.Status
}
}
if (status.InitialFailure.Value + MinimumTimeSinceInitialFailure <= now || minimumBackOff != TimeSpan.Zero)
if (!inGracePeriod || minimumBackOff != TimeSpan.Zero)
{
status.DisabledTill = now + CalculateBackOffPeriod(status);
}