From 2e2f79503cdf9b65cb46247291837c3a3675988e Mon Sep 17 00:00:00 2001 From: Taloth Saldono Date: Tue, 18 Jul 2017 10:33:34 +0200 Subject: [PATCH] Sonarr stuck if Deluge didn't return an infohash. Also updated some logging. --- src/NzbDrone.Core/Download/Clients/Deluge/Deluge.cs | 5 +++++ src/NzbDrone.Core/Download/Pending/PendingReleaseService.cs | 6 +++--- src/NzbDrone.Core/Download/ProcessDownloadDecisions.cs | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/NzbDrone.Core/Download/Clients/Deluge/Deluge.cs b/src/NzbDrone.Core/Download/Clients/Deluge/Deluge.cs index 696729368..e97feb963 100644 --- a/src/NzbDrone.Core/Download/Clients/Deluge/Deluge.cs +++ b/src/NzbDrone.Core/Download/Clients/Deluge/Deluge.cs @@ -57,6 +57,11 @@ namespace NzbDrone.Core.Download.Clients.Deluge { var actualHash = _proxy.AddTorrentFromFile(filename, fileContent, Settings); + if (actualHash.IsNullOrWhiteSpace()) + { + throw new DownloadClientException("Deluge failed to add torrent " + filename); + } + if (!Settings.TvCategory.IsNullOrWhiteSpace()) { _proxy.SetLabel(actualHash, Settings.TvCategory, Settings); diff --git a/src/NzbDrone.Core/Download/Pending/PendingReleaseService.cs b/src/NzbDrone.Core/Download/Pending/PendingReleaseService.cs index 4c2ac5a95..c23890b01 100644 --- a/src/NzbDrone.Core/Download/Pending/PendingReleaseService.cs +++ b/src/NzbDrone.Core/Download/Pending/PendingReleaseService.cs @@ -86,7 +86,7 @@ namespace NzbDrone.Core.Download.Pending { if (matchingReport.Reason != reason) { - _logger.Debug("This release is already pending with reason {0}, changing to {1}", matchingReport.Reason, reason); + _logger.Debug("The release {0} is already pending with reason {1}, changing to {2}", decision.RemoteEpisode, matchingReport.Reason, reason); matchingReport.Reason = reason; _repository.Update(matchingReport); sameReason = false; @@ -95,12 +95,12 @@ namespace NzbDrone.Core.Download.Pending if (sameReason) { - _logger.Debug("This release is already pending with reason {0}, not adding again", reason); + _logger.Debug("The release {0} is already pending with reason {1}, not adding again", decision.RemoteEpisode, reason); return; } } - _logger.Debug("Adding release to pending releases with reason {0}", reason); + _logger.Debug("Adding release {0} to pending releases with reason {1}", decision.RemoteEpisode, reason); Insert(decision, reason); } diff --git a/src/NzbDrone.Core/Download/ProcessDownloadDecisions.cs b/src/NzbDrone.Core/Download/ProcessDownloadDecisions.cs index 1a1d739b2..bd146dff7 100644 --- a/src/NzbDrone.Core/Download/ProcessDownloadDecisions.cs +++ b/src/NzbDrone.Core/Download/ProcessDownloadDecisions.cs @@ -78,7 +78,7 @@ namespace NzbDrone.Core.Download { if (ex is DownloadClientUnavailableException || ex is DownloadClientAuthenticationException) { - _logger.Debug("Failed to send release to download client, storing until later"); + _logger.Debug(ex, "Failed to send release to download client, storing until later. " + remoteEpisode); failed.Add(report); if (downloadProtocol == DownloadProtocol.Usenet)