diff --git a/src/NzbDrone.Core/Music/Services/AddArtistService.cs b/src/NzbDrone.Core/Music/Services/AddArtistService.cs index 2b484902e..872284ca4 100644 --- a/src/NzbDrone.Core/Music/Services/AddArtistService.cs +++ b/src/NzbDrone.Core/Music/Services/AddArtistService.cs @@ -67,6 +67,7 @@ public List AddArtists(List newArtists, bool doRefresh = true, b { var added = DateTime.UtcNow; var artistsToAdd = new List(); + var existingArtists = _artistService.GetAllArtists(); foreach (var s in newArtists) { @@ -84,6 +85,11 @@ public List AddArtists(List newArtists, bool doRefresh = true, b var artist = AddSkyhookData(s); artist = SetPropertiesAndValidate(artist); artist.Added = added; + if (existingArtists.Any(f => f.ForeignArtistId == artist.ForeignArtistId)) + { + _logger.Debug("Musicbrainz ID {0} was not added due to validation failure: Artist already exists in database", s.ForeignArtistId); + continue; + } if (artistsToAdd.Any(f => f.ForeignArtistId == artist.ForeignArtistId)) { _logger.Debug("Musicbrainz ID {0} was not added due to validation failure: Artist already exists on list", s.ForeignArtistId);