fix: propagate ensureAnimeRow error instead of silently discarding it
This commit is contained in:
@@ -161,11 +161,12 @@ func (s *playbackService) SaveProgress(ctx context.Context, userID string, anime
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *playbackService) ensureAnimeRow(ctx context.Context, anime domain.Anime) {
|
||||
func (s *playbackService) ensureAnimeRow(ctx context.Context, anime domain.Anime) error {
|
||||
if _, err := s.repo.GetAnime(ctx, int64(anime.MalID)); err == nil {
|
||||
return
|
||||
return nil
|
||||
}
|
||||
_, _ = s.repo.UpsertAnime(ctx, animeParams(anime))
|
||||
_, err := s.repo.UpsertAnime(ctx, animeParams(anime))
|
||||
return err
|
||||
}
|
||||
|
||||
func animeParams(anime domain.Anime) db.UpsertAnimeParams {
|
||||
|
||||
@@ -19,7 +19,12 @@ func (s *playbackService) BuildWatchData(ctx context.Context, animeID int, title
|
||||
}
|
||||
|
||||
animeData := domain.Anime{Anime: anime}
|
||||
s.ensureAnimeRow(ctx, animeData)
|
||||
if err := s.ensureAnimeRow(ctx, animeData); err != nil {
|
||||
observability.Warn("upsert_anime_failed", "playback", "",
|
||||
map[string]any{"anime_id": animeID},
|
||||
err,
|
||||
)
|
||||
}
|
||||
searchTitles := buildSearchTitles(animeData, titleCandidates)
|
||||
canonicalEpisodes, err := s.episodes.GetCanonicalEpisodes(ctx, animeData, false)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user