fix(backend): tolerate a repeated track when saving an album
A track appearing twice in a YouTube album would hit the unique link index and fail the whole save, so the second occurrence is skipped instead.
This commit is contained in:
@@ -57,6 +57,7 @@ namespace Musify.Application.Albums
|
||||
|
||||
await database.UserAlbums.AddAsync(album, cancellationToken);
|
||||
|
||||
var linkedTrackIds = new HashSet<Guid>();
|
||||
foreach (var track in detail.Tracks)
|
||||
{
|
||||
var provisionResult = await provisioner.GetOrCreateAsync(track.VideoId, cancellationToken);
|
||||
@@ -67,6 +68,9 @@ namespace Musify.Application.Albums
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!linkedTrackIds.Add(provisionResult.Value.Track.Id))
|
||||
continue;
|
||||
|
||||
await database.AlbumHasTracks.AddAsync(new AlbumHasTrack
|
||||
{
|
||||
AlbumId = album.Id,
|
||||
|
||||
Reference in New Issue
Block a user