From 4b559cf29cbdeebc67522c100f75dc4ff49de035 Mon Sep 17 00:00:00 2001 From: Leonardo Galli Date: Sat, 14 Jan 2017 14:23:48 +0100 Subject: [PATCH] Fix history items getting deleted because they do not have a series id. --- .../Housekeepers/CleanupOrphanedHistoryItems.cs | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/NzbDrone.Core/Housekeeping/Housekeepers/CleanupOrphanedHistoryItems.cs b/src/NzbDrone.Core/Housekeeping/Housekeepers/CleanupOrphanedHistoryItems.cs index ca03130e6..e8ee88d68 100644 --- a/src/NzbDrone.Core/Housekeeping/Housekeepers/CleanupOrphanedHistoryItems.cs +++ b/src/NzbDrone.Core/Housekeeping/Housekeepers/CleanupOrphanedHistoryItems.cs @@ -13,8 +13,9 @@ namespace NzbDrone.Core.Housekeeping.Housekeepers public void Clean() { - CleanupOrphanedBySeries(); - CleanupOrphanedByEpisode(); + //CleanupOrphanedBySeries(); + //CleanupOrphanedByEpisode(); + CleanupOrphanedByMovie(); } private void CleanupOrphanedBySeries() @@ -29,6 +30,18 @@ namespace NzbDrone.Core.Housekeeping.Housekeepers WHERE Series.Id IS NULL)"); } + private void CleanupOrphanedByMovie() + { + var mapper = _database.GetDataMapper(); + + mapper.ExecuteNonQuery(@"DELETE FROM History + WHERE Id IN ( + SELECT History.Id FROM History + LEFT OUTER JOIN Movies + ON History.MovieId = Movies.Id + WHERE Movies.Id IS NULL)"); + } + private void CleanupOrphanedByEpisode() { var mapper = _database.GetDataMapper();