Repository navigation
Match artist creation lookups using CleanName - #18005
Conversation
|
Thank you for the PR but I think this is rather treating the symptom of the actual issue: So the actual fix would be to rewrite the Same with the other PRs: please retarget and rebase onto the release branch too. |
34c96b4 to
b7ad2d0
Compare
Jellyfin API (v 12.1.0)ResultNo differences. Specifications are equivalent |
|
UseRawName is now dead code and I think we can remove it. Also, you should squash the commits, otherwise we will have the migration in the history too. |
b7ad2d0 to
e647b23
Compare
|
Addressed the follow-up items:
The focused artist lookup tests pass locally (5/5). |
|
Match artist creation lookups using CleanName Original-merge: d341176 Merged-by: crobibero <cody@robibe.ro> Backported-by: Cody Robibero <cody@robibe.ro>
Changes
The single-artist lookup used by CreateItemByName still matches lower(Name), while FindArtists matches CleanName. Names that differ only in accents, punctuation, or whitespace can therefore resolve differently in the two paths. Remove the MusicArtist lookup's UseRawName override so both use the same normalization and the existing IX_BaseItems_Type_CleanName index. The preference for a filesystem artist over a by-name artist is preserved. No new index or database migration is needed.
Rebased onto
release-12.z, which is now the target branch.Validation
5 tests passed: ArtistNameLookupTests, covering normalization, the actual SQLite query plan, and filesystem-artist precedence. Tested with .NET 10 in Release configuration on macOS arm64, with timestamped build metadata.
Code assistance
Codex assisted with implementation, regression testing, and these PR-description updates. The contributor supplied and edited the initial Chinese descriptions.
Issues
No linked issue.
Chinese explanation (updated for this revision)
艺术家的单条查询仍使用原始名称,而批量查询已使用 CleanName,导致重音符号、标点或空格不同的名称可能得到不一致的结果。按维护者建议移除单条查询的 UseRawName 覆盖,复用现有 Type + CleanName 索引,并保留优先选择文件夹内艺术家的行为。新增索引及数据库迁移已撤掉。