Jellyfin Forum
SOLVED: Library scan fails - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: SOLVED: Library scan fails (/t-solved-library-scan-fails)



Library scan fails - Mobilis - 2024-05-19

Hello Everyone ! Newbie here...

[*]The version of Jellyfin you are running (e.g. 10.8.10)
[*] - 10.9.1

[*]Your installation method and platform (e.g. Linux Docker, Debian repository, Windows installer, etc.)
[*] - docker on a Synology NAS

[*]A brief description of the issue as your thread subject, using the description for additional important context only if required
[*] - Library scan fails when I add specific files to a music library

[*]A full explanation of what is happening, versus what you expect to happen
[*] - Everything was working quite well then I decided to add my music to a library, and from then on scanning started to fail systematically. So I removed the files and scanning worked again. Then I tried to re-add music, artist by artist (painfully). Some work, others break the scan. I can't figure what is wrong. My library consists of mainly Ogg files with occasional Flac. No other files at all (no jpg, no nfo, nothing). Files have been tagged and renamed via Musicbrainz Picard. I have spent hours on this trying to figure why, some files work and not others...

[*]What client(s) you are using and how the issue manifests
[*] - not a client issue obviously but I'm using the WEB UI in firefox

[*]Any other context you might think is relevant
the error log shows this
[2024-05-19 10:23:59.066 +02:00] [ERR] [3] Emby.Server.Implementations.ScheduledTasks.TaskManager: Error executing Scheduled Task
System.TypeInitializationException: The type initializer for 'ICU4N.Text.Transliterator' threw an exception.
---> System.TypeInitializationException: The type initializer for 'ICU4N.Globalization.UCultureInfo' threw an exception.
---> System.Globalization.CultureNotFoundException: Only the invariant culture is supported in globalization-invariant mode. See https://aka.ms/GlobalizationInvariantMode for more information. (Parameter 'name')
en is an invalid culture identifier.
  at System.Globalization.CultureInfo..ctor(String name, Boolean useUserOverride)
  at ICU4N.Globalization.UCultureInfo..cctor()
  --- End of inner exception stack trace ---
  at ICU4N.Globalization.UCultureInfo.get_CurrentCulture()
  at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(String baseName, String localeID, Assembly root, OpenType openType)
  at ICU4N.Impl.ICUResourceBundle.GetBundleInstance(String baseName, String localeID, Assembly root, Boolean disableFallback)
  at ICU4N.Util.UResourceBundle.<>c__DisplayClass25_0.<GetRootType>b__0(String key)
  at System.Collections.Concurrent.ConcurrentDictionary2.GetOrAdd(TKey key, Func2 valueFactory)
  at ICU4N.Util.UResourceBundle.GetRootType(String baseName, Assembly root)
  at ICU4N.Util.UResourceBundle.InstantiateBundle(String baseName, String localeName, Assembly root, Boolean disableFallback)
  at ICU4N.Util.UResourceBundle.GetBundleInstance(String baseName, String localeName, Assembly root, Boolean disableFallback)
  at ICU4N.Util.UResourceBundle.GetBundleInstance(String baseName, String localeName, Assembly root)
  at ICU4N.Text.Transliterator..cctor()
  --- End of inner exception stack trace ---
  at ICU4N.Text.Transliterator.GetInstance(String id)
  at Jellyfin.Extensions.StringExtensions.<>c.<.cctor>b__8_0()
  at System.Lazy1.ViaFactory(LazyThreadSafetyMode mode)
--- End of stack trace from previous location ---
  at System.Lazy
1.CreateValue()
  at Jellyfin.Extensions.StringExtensions.Transliterated(String text)
  at MediaBrowser.Controller.Entities.BaseItem.ModifySortChunks(ReadOnlySpan1 name)
  at MediaBrowser.Controller.Entities.BaseItem.CreateSortName()
  at MediaBrowser.Controller.Entities.BaseItem.get_SortName()
  at Emby.Server.Implementations.Data.SqliteItemRepository.SaveItem(BaseItem item, BaseItem topParent, String userDataKey, SqliteCommand saveItemStatement)
  at Emby.Server.Implementations.Data.SqliteItemRepository.SaveItemsInTransaction(SqliteConnection db, IEnumerable
1 tuples)
  at Emby.Server.Implementations.Data.SqliteItemRepository.SaveItems(IReadOnlyList1 items, CancellationToken cancellationToken)
  at Emby.Server.Implementations.Library.LibraryManager.CreateItems(IReadOnlyList
1 items, BaseItem parent, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.ValidateChildrenInternal2(IProgress1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.ValidateChildrenInternal(IProgress
1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.<>c__DisplayClass69_01.<<RunTasks>b__1>d.MoveNext()
--- End of stack trace from previous location ---
  at MediaBrowser.Controller.Entities.Folder.RunTasks[T](Func
3 task, IList1 children, IProgress1 progress, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.ValidateChildrenInternal2(IProgress1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.ValidateChildrenInternal(IProgress
1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.<>c__DisplayClass69_01.<<RunTasks>b__1>d.MoveNext()
--- End of stack trace from previous location ---
  at MediaBrowser.Controller.Entities.Folder.RunTasks[T](Func
3 task, IList1 children, IProgress1 progress, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.ValidateChildrenInternal2(IProgress1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.Folder.ValidateChildrenInternal(IProgress
1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
  at MediaBrowser.Controller.Entities.AggregateFolder.ValidateChildrenInternal(IProgress1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
  at Emby.Server.Implementations.Library.LibraryManager.PerformLibraryValidation(IProgress
1 progress, CancellationToken cancellationToken)
  at Emby.Server.Implementations.Library.LibraryManager.ValidateMediaLibraryInternal(IProgress`1 progress, CancellationToken cancellationToken)
  at Emby.Server.Implementations.ScheduledTasks.ScheduledTaskWorker.ExecuteInternal(TaskOptions options)
[2024-05-19 10:23:59.068 +02:00] [INF] [3] Emby.Server.Implementations.ScheduledTasks.TaskManager: "Scan Media Library" Failed after 0 minute(s) and 3 seconds


RE: Library scan fails - paulc - 2024-05-19

Solution possible here: https://github.com/jellyfin/jellyfin/issues/11528  which would be to change DOTNET_SYSTEM_GLOBALIZATION_INVARIANT set to true or 1 in the env file.

Maybe that will fix it.


RE: Library scan fails - Mobilis - 2024-05-19

Man: you saved my day !
Removing the said variable completely fixed it for me !!!
Thanks a lot !