ShokoAnime / Shokofin

Repository for Shokofin, a plugin that brings Shoko to Jellyfin.
https://shokoanime.com
MIT License
139 stars 17 forks source link

Unhandled exception v2 #74

Open t0815 opened 4 days ago

t0815 commented 4 days ago

Jellyfin version.

10.9.11

Shokofin version.

4.1.1.34

Shoko Server version, release channel, and commit hash.

4.2.2

File structure of your Media Library Folder in Jellyfin/Import Folder in Shoko Server.

drive:/movies//.xyy

Screenshot of the "library settings" section of the plugin settings.

grafik

Library Type(s).

Movies

Do the issue persists after creating a library with Shoko set as the only metadata provider? (Now is your time to check if you haven't already.)

Issue

an other unhandled exeption, which should imo not break import. Import should just skip the file I guess....

Stack Trace

[2024-09-14 19:03:46.712 +02:00] [ERR] [26] Shokofin.Resolvers.ShokoIgnoreRule: Threw unexpectedly; "Unable to determine the series to use for the file based on it's location because the file resides within a mixed folder with multiple AniDB anime in it. You will either have to fix your file structure or use the VFS to avoid this issue. (File=69074)
File location; Z:\Movie\Tamako Love Story\[Commie] Tamako Love Story [BD 1080p AAC] [3A514F6F].mkv"
System.Exception: Unable to determine the series to use for the file based on it's location because the file resides within a mixed folder with multiple AniDB anime in it. You will either have to fix your file structure or use the VFS to avoid this issue. (File=69074)
File location; Z:\Movie\Tamako Love Story\[Commie] Tamako Love Story [BD 1080p AAC] [3A514F6F].mkv
   at Shokofin.API.ShokoAPIManager.GetFileInfoByPath(String path)
   at Shokofin.Resolvers.ShokoIgnoreRule.ShouldFilterFile(String partialPath, String fullPath, Boolean shouldIgnore)
   at Shokofin.Resolvers.ShokoIgnoreRule.ShouldFilterItem(Folder parent, FileSystemMetadata fileInfo)
[2024-09-14 19:03:46.715 +02:00] [ERR] [26] MediaBrowser.Controller.Entities.BaseItem: Error retrieving children
System.Exception: Unable to determine the series to use for the file based on it's location because the file resides within a mixed folder with multiple AniDB anime in it. You will either have to fix your file structure or use the VFS to avoid this issue. (File=69074)
File location; Z:\Movie\Tamako Love Story\[Commie] Tamako Love Story [BD 1080p AAC] [3A514F6F].mkv
   at Shokofin.API.ShokoAPIManager.GetFileInfoByPath(String path)
   at Shokofin.Resolvers.ShokoIgnoreRule.ShouldFilterFile(String partialPath, String fullPath, Boolean shouldIgnore)
   at Shokofin.Resolvers.ShokoIgnoreRule.ShouldFilterItem(Folder parent, FileSystemMetadata fileInfo)
   at Shokofin.Resolvers.ShokoIgnoreRule.MediaBrowser.Controller.Resolvers.IResolverIgnoreRule.ShouldIgnore(FileSystemMetadata fileInfo, BaseItem parent)
   at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
   at Emby.Server.Implementations.Library.LibraryManager.<>c__DisplayClass87_0.<ResolvePaths>b__0(FileSystemMetadata i)
   at System.Linq.Enumerable.WhereArrayIterator`1.ToList()
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePaths(IEnumerable`1 files, IDirectoryService directoryService, Folder parent, LibraryOptions libraryOptions, Nullable`1 collectionType, IItemResolver[] resolvers)
   at Emby.Server.Implementations.Library.LibraryManager.ResolvePaths(IEnumerable`1 files, IDirectoryService directoryService, Folder parent, LibraryOptions libraryOptions, Nullable`1 collectionType)
   at MediaBrowser.Controller.Entities.Folder.GetNonCachedChildren(IDirectoryService directoryService)
   at MediaBrowser.Controller.Entities.Folder.ValidateChildrenInternal2(IProgress`1 progress, Boolean recursive, Boolean refreshChildMetadata, Boolean allowRemoveRoot, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService, CancellationToken cancellationToken)
revam commented 4 days ago

Read the error message.

revam commented 4 days ago

an other unhandled exeption, which should imo not break import. Import should just skip the file I guess....

by design we will not skip if we encounter an exception like this, because the users will just come complain that their files aren't appearing and blaming the plugin. instead, we tell the user why it is throwing and abstract how to fix it. if you don't want to have these issues and manually fix them, then use the vfs (if your setup permits it).

t0815 commented 3 days ago

well, but in the given folder, there only is 1 file (the movie file in question).

revam commented 3 days ago

then try running the 'remove missing files' action followed by scanning the import folder(s) (the πŸ”+πŸ“ icon) on the import folder(s) itself(/themselves). to make 100% sure no 'missing' file entries exist in the database.