1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-04-19 21:46:50 -04:00

Prevent should refresh movie metadata from failing

Fixed: Prevent error checking if movie metadata should be refreshed from failing refresh movies task
(cherry picked from commit 3eed84c67938fed308e562e69cf7bcd727063803)
This commit is contained in:
Mark McDowall
2025-05-21 17:17:19 -07:00
committed by Bogdan
parent a9ad197b75
commit b6b7f13839
+36 -26
View File
@@ -19,38 +19,48 @@ namespace NzbDrone.Core.Movies
public bool ShouldRefresh(MovieMetadata movie) public bool ShouldRefresh(MovieMetadata movie)
{ {
if (movie == null) try
{ {
_logger.Warn("Movie metadata does not exist, should not be refreshed."); if (movie == null)
{
_logger.Warn("Movie metadata does not exist, should not be refreshed.");
return false;
}
if (movie.LastInfoSync < DateTime.UtcNow.AddDays(-180))
{
_logger.Trace("Movie {0} last updated more than 180 days ago, should refresh.", movie.Title);
return true;
}
if (movie.LastInfoSync >= DateTime.UtcNow.AddHours(-12))
{
_logger.Trace("Movie {0} last updated less than 12 hours ago, should not be refreshed.",
movie.Title);
return false;
}
if (movie.Status is MovieStatusType.Announced or MovieStatusType.InCinemas)
{
_logger.Trace("Movie {0} is announced or in cinemas, should refresh.", movie.Title);
return true;
}
if (movie.Status == MovieStatusType.Released &&
movie.PhysicalReleaseDate() >= DateTime.UtcNow.AddDays(-30))
{
_logger.Trace("Movie {0} is released since less than 30 days, should refresh", movie.Title);
return true;
}
_logger.Trace("Movie {0} came out long ago, should not be refreshed.", movie.Title);
return false; return false;
} }
catch (Exception e)
if (movie.LastInfoSync < DateTime.UtcNow.AddDays(-180))
{ {
_logger.Trace("Movie {0} last updated more than 180 days ago, should refresh.", movie.Title); _logger.Error(e, "Unable to determine if movie metadata should refresh, will try to refresh.");
return true; return true;
} }
if (movie.LastInfoSync >= DateTime.UtcNow.AddHours(-12))
{
_logger.Trace("Movie {0} last updated less than 12 hours ago, should not be refreshed.", movie.Title);
return false;
}
if (movie.Status == MovieStatusType.Announced || movie.Status == MovieStatusType.InCinemas)
{
_logger.Trace("Movie {0} is announced or in cinemas, should refresh.", movie.Title);
return true;
}
if (movie.Status == MovieStatusType.Released && movie.PhysicalReleaseDate() >= DateTime.UtcNow.AddDays(-30))
{
_logger.Trace("Movie {0} is released since less than 30 days, should refresh", movie.Title);
return true;
}
_logger.Trace("Movie {0} came out long ago, should not be refreshed.", movie.Title);
return false;
} }
} }
} }