diff --git a/Jellyfin.Server.Implementations/MediaSegments/MediaSegmentManager.cs b/Jellyfin.Server.Implementations/MediaSegments/MediaSegmentManager.cs index bcf1296331..c514735688 100644 --- a/Jellyfin.Server.Implementations/MediaSegments/MediaSegmentManager.cs +++ b/Jellyfin.Server.Implementations/MediaSegments/MediaSegmentManager.cs @@ -182,12 +182,6 @@ public class MediaSegmentManager : IMediaSegmentManager /// public async Task DeleteSegmentsAsync(Guid itemId, CancellationToken cancellationToken) { - var db = await _dbProvider.CreateDbContextAsync(cancellationToken).ConfigureAwait(false); - await using (db.ConfigureAwait(false)) - { - await db.MediaSegments.Where(e => e.ItemId.Equals(itemId)).ExecuteDeleteAsync(cancellationToken).ConfigureAwait(false); - } - foreach (var provider in _segmentProviders) { try @@ -199,6 +193,12 @@ public class MediaSegmentManager : IMediaSegmentManager _logger.LogError(ex, "Provider {ProviderName} failed to clean up extracted data for item {ItemId}", provider.Name, itemId); } } + + var db = await _dbProvider.CreateDbContextAsync(cancellationToken).ConfigureAwait(false); + await using (db.ConfigureAwait(false)) + { + await db.MediaSegments.Where(e => e.ItemId.Equals(itemId)).ExecuteDeleteAsync(cancellationToken).ConfigureAwait(false); + } } /// diff --git a/MediaBrowser.Controller/MediaSegments/IMediaSegmentProvider.cs b/MediaBrowser.Controller/MediaSegments/IMediaSegmentProvider.cs index ef0135900b..54da218530 100644 --- a/MediaBrowser.Controller/MediaSegments/IMediaSegmentProvider.cs +++ b/MediaBrowser.Controller/MediaSegments/IMediaSegmentProvider.cs @@ -40,8 +40,5 @@ public interface IMediaSegmentProvider /// The item whose data is being pruned. /// Abort token. /// A task representing the asynchronous cleanup operation. - Task CleanupExtractedData(Guid itemId, CancellationToken cancellationToken) - { - return Task.CompletedTask; - } + Task CleanupExtractedData(Guid itemId, CancellationToken cancellationToken); }