2025-05-29, 05:41 PM
(This post was last modified: 2025-05-29, 06:06 PM by mufasachan. Edited 1 time in total.)
Hello,
First I would like to thank the Jellyfin project for being such a great piece of software. I have been using it for years and it does wonders!
My Jellyfin setup is a container ones with Podman with user privilege only. Jellyfin is behing a Caddy reverse proxy and that's it. There is no further components, the subdomain is public. My version is the container docker.io/jellyfin/jellyfin:2025041517 . The (config and cache and) data storage are set as bind volume. The root of the container is the host user such that there is no conflict between the two. Everything runs on a single machine.
The problem arose when I did the following for some of my TV shows that I got without the *arr suite. Those shows were not in a good layout for Jellyfin and it was creating duplicate and some non-sense. I read the documentation and conclude that I should do the most minimal layout for my shows. It worked on one after dozens of minutes trying to figure out some problems etc... So far, there is no problem.
Then, for the others shows I started to do the following method:
1. Copy (not move!!) the show folder into another folder.
2. In the other folder, remove the nfo files and other generation (trickplay, images). Then, rename/create folder and files to have the expected layout
3. In Jellyfin, delete the show
4. Copy back the show folder in the library's path.
Suddenly, the new added shows were not discovered anymore even with a Metadata scan (I tried all type new/missing/replace). More, the metadata editor became useless on existing show. This Similar post seems to have the same trouble as me. But in my case, there is no remote storage and the permission are OK since the host UID is mapped to the root UID in the container. Also, there were no problem before this tweaking of editor.
I set up the log to Debug, here the full log. For readability, I split it across different logs: auth.log, api_controller.log, mediabrowser.log, the rest (with the error of interest). At this time, I tried to get in one of my document in the library and use "Edit metadata".
I think I might confuse Jellyfin with something and it causes the issue? I cannot see the root cause based on the log. I tried to shutdown jellyfin, clear its cache and start it, it still have this behaviour.
If you have any suggestion I would be happy to know!
Thanks for reading.
Edit: I just thought that I might not be accurate at pointing what I think is the cause. In the "rest" log, there are these lines:
Those lines appear when I try to edit metadata, refresh the metadata (any refresh). I believe that any metadata change are blocked by this error. For the "MetadataEditor", I cannot see what is it? But this missing thing seems to be the root cause.
First I would like to thank the Jellyfin project for being such a great piece of software. I have been using it for years and it does wonders!
My Jellyfin setup is a container ones with Podman with user privilege only. Jellyfin is behing a Caddy reverse proxy and that's it. There is no further components, the subdomain is public. My version is the container docker.io/jellyfin/jellyfin:2025041517 . The (config and cache and) data storage are set as bind volume. The root of the container is the host user such that there is no conflict between the two. Everything runs on a single machine.
The problem arose when I did the following for some of my TV shows that I got without the *arr suite. Those shows were not in a good layout for Jellyfin and it was creating duplicate and some non-sense. I read the documentation and conclude that I should do the most minimal layout for my shows. It worked on one after dozens of minutes trying to figure out some problems etc... So far, there is no problem.
Then, for the others shows I started to do the following method:
1. Copy (not move!!) the show folder into another folder.
2. In the other folder, remove the nfo files and other generation (trickplay, images). Then, rename/create folder and files to have the expected layout
3. In Jellyfin, delete the show
4. Copy back the show folder in the library's path.
Suddenly, the new added shows were not discovered anymore even with a Metadata scan (I tried all type new/missing/replace). More, the metadata editor became useless on existing show. This Similar post seems to have the same trouble as me. But in my case, there is no remote storage and the permission are OK since the host UID is mapped to the root UID in the container. Also, there were no problem before this tweaking of editor.
I set up the log to Debug, here the full log. For readability, I split it across different logs: auth.log, api_controller.log, mediabrowser.log, the rest (with the error of interest). At this time, I tried to get in one of my document in the library and use "Edit metadata".
I think I might confuse Jellyfin with something and it causes the issue? I cannot see the root cause based on the log. I tried to shutdown jellyfin, clear its cache and start it, it still have this behaviour.
If you have any suggestion I would be happy to know!
Thanks for reading.
Edit: I just thought that I might not be accurate at pointing what I think is the cause. In the "rest" log, there are these lines:
Code:
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: [18:39:42] [ERR] [24] Jellyfin.Api.Middleware.ExceptionMiddleware: Error processing request. URL GET /Items/1bbaf0837cffd3b6afebe4eaef690b71/MetadataEditor.
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: System.NullReferenceException: Object reference not set to an instance of an object.
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Emby.Server.Implementations.IO.ManagedFileSystem.AreEqual(String path1, String path2)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Emby.Server.Implementations.Library.LibraryManager.<>c__DisplayClass164_0.<GetContentTypeOverride>b__0(NameValuePair i)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable`1 source, Func`2 predicate, Boolean& found)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Emby.Server.Implementations.Library.LibraryManager.GetContentTypeOverride(String path, Boolean inherit)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Emby.Server.Implementations.Library.LibraryManager.GetConfiguredContentType(BaseItem item, Boolean inheritConfiguredPath)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Emby.Server.Implementations.Library.LibraryManager.GetConfiguredContentType(BaseItem item)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at lambda_method5087(Closure, Object, Object[])
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: --- End of stack trace from previous location ---
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: --- End of stack trace from previous location ---
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync()
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: --- End of stack trace from previous location ---
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.ServerStartupMessageMiddleware.Invoke(HttpContext httpContext, IServerApplicationHost serverApplicationHost, ILocalizationManager localizationManager)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.WebSocketHandlerMiddleware.Invoke(HttpContext httpContext, IWebSocketManager webSocketManager)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.IPBasedAccessValidationMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.LanFilteringMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager, IServerConfigurationManager serverConfigurationManager)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.QueryStringDecodingMiddleware.Invoke(HttpContext httpContext)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Swashbuckle.AspNetCore.ReDoc.ReDocMiddleware.Invoke(HttpContext httpContext)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.RobotsRedirectionMiddleware.Invoke(HttpContext httpContext)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.LegacyEmbyRouteRewriteMiddleware.Invoke(HttpContext httpContext)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context, IServerConfigurationManager serverConfigurationManager)
May 29 18:39:42 <HOSTNAME> jellyfin[2431106]: at Jellyfin.Api.Middleware.ExceptionMiddleware.Invoke(HttpContext context)
Those lines appear when I try to edit metadata, refresh the metadata (any refresh). I believe that any metadata change are blocked by this error. For the "MetadataEditor", I cannot see what is it? But this missing thing seems to be the root cause.