[PR #15689] [MERGED] Use original name for MusicAritist matching #14387

Closed
opened 2026-02-07 07:29:04 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/jellyfin/jellyfin/pull/15689
Author: @gnattu
Created: 12/1/2025
Status: Merged
Merged: 12/6/2025
Merged by: @crobibero

Base: release-10.11.zHead: dont-normalize-artist-name


📝 Commits (1)

  • 01e87b7 Use original name for MusicAritist matching

📊 Changes

3 files changed (+12 additions, -2 deletions)

View changed files

📝 Emby.Server.Implementations/Library/LibraryManager.cs (+1 -0)
📝 Jellyfin.Server.Implementations/Item/BaseItemRepository.cs (+9 -2)
📝 MediaBrowser.Controller/Entities/InternalItemsQuery.cs (+2 -0)

📄 Description

Our MusicArtist matching is now having inconsistencies after EFCore refactor:

  • In LibraryManager.cs, CreateItemByName uses GetItemList to find existing artists and that query would transparently normalize the artist name into a clean name and return the artist matched with the clean name, even if the original artist name is different
  • However, in BaseItemRepository.cs, the FindArtists match artists with the original name (not the normalized cleanName)

This inconsistency would cause the following case:

  • One artist named Tim already exists
  • Now another artist named TIM comes in
  • This artist cannot be created because CreateItemByName thinks there is already an existing artist to be the same person
  • But FindArtists will not be able to find that particular artist, and to user, there is just one "missing artist"

Given the fact that artists could having surprisingly similar name that just differ by cases or special characters, we should always use the original name to match existing artists.

Changes

Issues

Fixes #15283


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/jellyfin/jellyfin/pull/15689 **Author:** [@gnattu](https://github.com/gnattu) **Created:** 12/1/2025 **Status:** ✅ Merged **Merged:** 12/6/2025 **Merged by:** [@crobibero](https://github.com/crobibero) **Base:** `release-10.11.z` ← **Head:** `dont-normalize-artist-name` --- ### 📝 Commits (1) - [`01e87b7`](https://github.com/jellyfin/jellyfin/commit/01e87b7d6f910f5686eb0af8b4b482a35ea98f89) Use original name for MusicAritist matching ### 📊 Changes **3 files changed** (+12 additions, -2 deletions) <details> <summary>View changed files</summary> 📝 `Emby.Server.Implementations/Library/LibraryManager.cs` (+1 -0) 📝 `Jellyfin.Server.Implementations/Item/BaseItemRepository.cs` (+9 -2) 📝 `MediaBrowser.Controller/Entities/InternalItemsQuery.cs` (+2 -0) </details> ### 📄 Description Our MusicArtist matching is now having inconsistencies after EFCore refactor: - In LibraryManager.cs, `CreateItemByName` uses `GetItemList` to find existing artists and that query would transparently normalize the artist name into a clean name and return the artist matched with the clean name, even if the original artist name is different - However, in BaseItemRepository.cs, the `FindArtists` match artists with the original name (not the normalized cleanName) This inconsistency would cause the following case: - One artist named Tim already exists - Now another artist named TIM comes in - This artist cannot be created because `CreateItemByName` thinks there is already an existing artist to be the same person - But `FindArtists` will not be able to find that particular artist, and to user, there is just one "missing artist" Given the fact that artists could having surprisingly similar name that just differ by cases or special characters, we should always use the original name to match existing artists. <!-- Ensure your title is short, descriptive, and in the imperative mood (Fix X, Change Y, instead of Fixed X, Changed Y). For a good inspiration of what to write in commit messages and PRs please review https://chris.beams.io/posts/git-commit/ and our documentation. --> **Changes** <!-- Describe your changes here in 1-5 sentences. --> **Issues** <!-- Tag any issues that this PR solves here. ex. Fixes # --> Fixes #15283 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-07 07:29:04 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/jellyfin#14387