diff --git a/src/Ombi.Schedule/Jobs/Plex/PlexContentSync.cs b/src/Ombi.Schedule/Jobs/Plex/PlexContentSync.cs index 842d1d260..92111b1cf 100644 --- a/src/Ombi.Schedule/Jobs/Plex/PlexContentSync.cs +++ b/src/Ombi.Schedule/Jobs/Plex/PlexContentSync.cs @@ -135,14 +135,13 @@ namespace Ombi.Schedule.Jobs.Plex if (existingKey != null) { // The rating key is all good! - existingContent = existingKey; } else { // This means the rating key has changed somehow. - // We need to reset the correct keys + // Should probably delete this and get the new one var oldKey = existingContent.Key; - existingContent.Key = show.ratingKey; + Repo.DeleteWithoutSave(existingContent); // Because we have changed the rating key, we need to change all children too var episodeToChange = Repo.GetAllEpisodes().Where(x => x.GrandparentKey == oldKey); @@ -150,10 +149,11 @@ namespace Ombi.Schedule.Jobs.Plex { foreach (var e in episodeToChange) { - e.GrandparentKey = existingContent.Key; + Repo.DeleteWithoutSave(e); } } await Repo.SaveChangesAsync(); + existingContent = null; } } diff --git a/src/Ombi.Store/Repository/IPlexContentRepository.cs b/src/Ombi.Store/Repository/IPlexContentRepository.cs index cb244dcd2..2fef89be2 100644 --- a/src/Ombi.Store/Repository/IPlexContentRepository.cs +++ b/src/Ombi.Store/Repository/IPlexContentRepository.cs @@ -19,5 +19,8 @@ namespace Ombi.Store.Repository Task AddRange(IEnumerable content); IEnumerable GetWhereContentByCustom(Expression> predicate); Task GetFirstContentByCustom(Expression> predicate); + Task DeleteEpisode(PlexEpisode content); + void DeleteWithoutSave(PlexServerContent content); + void DeleteWithoutSave(PlexEpisode content); } } \ No newline at end of file diff --git a/src/Ombi.Store/Repository/PlexContentRepository.cs b/src/Ombi.Store/Repository/PlexContentRepository.cs index 35bf56057..56fec441a 100644 --- a/src/Ombi.Store/Repository/PlexContentRepository.cs +++ b/src/Ombi.Store/Repository/PlexContentRepository.cs @@ -103,12 +103,29 @@ namespace Ombi.Store.Repository return Db.PlexEpisode.Include(x => x.Series).AsQueryable(); } + public void DeleteWithoutSave(PlexServerContent content) + { + Db.PlexServerContent.Remove(content); + } + + public void DeleteWithoutSave(PlexEpisode content) + { + Db.PlexEpisode.Remove(content); + } + public async Task Add(PlexEpisode content) { await Db.PlexEpisode.AddAsync(content); await Db.SaveChangesAsync(); return content; } + + public async Task DeleteEpisode(PlexEpisode content) + { + Db.PlexEpisode.Remove(content); + await Db.SaveChangesAsync(); + } + public async Task GetEpisodeByKey(int key) { return await Db.PlexEpisode.FirstOrDefaultAsync(x => x.Key == key); diff --git a/src/Ombi/Startup.cs b/src/Ombi/Startup.cs index f66754a0e..d92650d85 100644 --- a/src/Ombi/Startup.cs +++ b/src/Ombi/Startup.cs @@ -57,7 +57,6 @@ namespace Ombi config = new LoggerConfiguration() .MinimumLevel.Debug() .WriteTo.RollingFile(Path.Combine(env.ContentRootPath, "Logs", "log-{Date}.txt")) - .WriteTo.SQLite("Ombi.db", "Logs", LogEventLevel.Debug) .CreateLogger(); } else @@ -65,7 +64,6 @@ namespace Ombi config = new LoggerConfiguration() .MinimumLevel.Debug() .WriteTo.RollingFile(Path.Combine(StoragePath.StoragePath, "Logs", "log-{Date}.txt")) - .WriteTo.SQLite(Path.Combine(StoragePath.StoragePath, "Ombi.db"), "Logs", LogEventLevel.Debug) .CreateLogger(); } Log.Logger = config; diff --git a/src/Ombi/appsettings.Development.json b/src/Ombi/appsettings.Development.json index fa8ce71a9..6fa76219e 100644 --- a/src/Ombi/appsettings.Development.json +++ b/src/Ombi/appsettings.Development.json @@ -2,9 +2,9 @@ "Logging": { "IncludeScopes": false, "LogLevel": { - "Default": "Debug", - "System": "Information", - "Microsoft": "Information" + "Default": "Trace", + "System": "Trace", + "Microsoft": "Warning" } } } diff --git a/src/Ombi/appsettings.json b/src/Ombi/appsettings.json index e2534496b..ed9a1b88a 100644 --- a/src/Ombi/appsettings.json +++ b/src/Ombi/appsettings.json @@ -4,7 +4,8 @@ "LogLevel": { "Default": "Debug", "System": "Debug", - "Microsoft": "None" + "Microsoft": "None", + "Hangfire": "None" } }, "ApplicationSettings": {