Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't open user preferences for admin user #6235

Closed
DomiStyle opened this issue Jun 27, 2021 · 5 comments
Closed

Can't open user preferences for admin user #6235

DomiStyle opened this issue Jun 27, 2021 · 5 comments
Labels
bug Something isn't working

Comments

@DomiStyle
Copy link
Contributor

DomiStyle commented Jun 27, 2021

Describe the bug
Trying to open any of the user settings (Display, Home, Playback, Subtitles) returns a 500 from the server and ends up causing infinite loading screens in the UI. This also affects the login screen.

System (please complete the following information):

  • OS: Ubuntu 20.04
  • Virtualization: Docker
  • Clients: Browser
  • Browser: Firefox 89
  • Jellyfin Version: 10.7.6
  • Playback: -
  • Installed Plugins: TheTVDB, Trakt
  • Reverse Proxy: nginx
  • Base URL: none
  • Networking: Bridge/NAT
  • Storage: local

To Reproduce

  • Login with admin user
  • Login screen gets stuck because request to /DisplayPreferences/usersettings fails

Expected behavior
Login user

Server Logs

[10:28:11] [ERR] [86] Microsoft.EntityFrameworkCore.Query: An exception occurred while iterating over the results of a query for context type 'Jellyfin.Server.Implementations.JellyfinDb'.
System.InvalidOperationException: The data is NULL at ordinal 5. This method can't be called on NULL values. Check using IsDBNull before calling.
   at Microsoft.Data.Sqlite.SqliteValueReader.GetString(Int32 ordinal)
   at lambda_method640(Closure , QueryContext , DbDataReader , ResultContext , SingleQueryResultCoordinator )
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
System.InvalidOperationException: The data is NULL at ordinal 5. This method can't be called on NULL values. Check using IsDBNull before calling.
   at Microsoft.Data.Sqlite.SqliteValueReader.GetString(Int32 ordinal)
   at lambda_method640(Closure , QueryContext , DbDataReader , ResultContext , SingleQueryResultCoordinator )
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
[10:28:11] [ERR] [86] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request. URL GET /DisplayPreferences/usersettings.
System.InvalidOperationException: The data is NULL at ordinal 5. This method can't be called on NULL values. Check using IsDBNull before calling.
   at Microsoft.Data.Sqlite.SqliteValueReader.GetString(Int32 ordinal)
   at lambda_method640(Closure , QueryContext , DbDataReader , ResultContext , SingleQueryResultCoordinator )
   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
   at Jellyfin.Api.Controllers.DisplayPreferencesController.GetDisplayPreferences(String displayPreferencesId, Guid userId, String client)
   at lambda_method499(Closure , Object , Object[] )
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|24_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
   at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
   at Jellyfin.Server.Middleware.ServerStartupMessageMiddleware.Invoke(HttpContext httpContext, IServerApplicationHost serverApplicationHost, ILocalizationManager localizationManager)
   at Jellyfin.Server.Middleware.WebSocketHandlerMiddleware.Invoke(HttpContext httpContext, IWebSocketManager webSocketManager)
   at Jellyfin.Server.Middleware.IpBasedAccessValidationMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager)
   at Jellyfin.Server.Middleware.LanFilteringMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager, IServerConfigurationManager serverConfigurationManager)
   at Microsoft.AspNetCore.Authorization.Policy.AuthorizationMiddlewareResultHandler.HandleAsync(RequestDelegate next, HttpContext context, AuthorizationPolicy policy, PolicyAuthorizationResult authorizeResult)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Swashbuckle.AspNetCore.ReDoc.ReDocMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
   at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Jellyfin.Server.Middleware.RobotsRedirectionMiddleware.Invoke(HttpContext httpContext)
   at Jellyfin.Server.Middleware.LegacyEmbyRouteRewriteMiddleware.Invoke(HttpContext httpContext)
   at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.Invoke(HttpContext context)
   at Jellyfin.Server.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context)
   at Jellyfin.Server.Middleware.ExceptionMiddleware.Invoke(HttpContext context)

Browser Console Logs

Requesting https://jellyfin.example.org/DisplayPreferences/usersettings?userId=1234&client=emby main.0f183787a2f78055e856.bundle.js:2:671171
XHR GET https://jellyfin.example.org/DisplayPreferences/usersettings?userId=1234&client=emby
[HTTP/2 500 Internal Server Error 5ms]

Request failed to https://jellyfin.example.org/DisplayPreferences/usersettings?userId=1234&client=emby [object Response] main.0f183787a2f78055e856.bundle.js:2:671551
Reporting request failure

Additional context
Refreshing Jellyfin in browser will lead to a successful login after it gets stuck, only the user preference request after the login fails.

Creating a new user works fine, user settings can be retrieved with no issues.

Probably related to #5953 #6012

@DomiStyle DomiStyle added the bug Something isn't working label Jun 27, 2021
@redactedscribe
Copy link

Same happens for me.

After logging in, the error messages appearing, and the UI getting stuck, loading http://localhost:8096/web/index.html will get you past the log-in page.

It looks like the same error occurs again when initiating a rescan of a library via the Dashboard.

  • OS: Windows 10 v21H1
  • Virtualization: -
  • Browser: Firefox 89.0.2
  • Jellyfin Version: 10.7.6
  • Installed Plugins: AniDB, AniList, AniSearch, Fanart, Intros, Kitsu, Kodi Sync Queue, Open Subtitles, Playback Reporting, Reports, TMDb Box Sets, TheTVDB, Trakt
  • Reverse Proxy: -
  • Storage: local

@nodiscc
Copy link

nodiscc commented Jul 19, 2021

I can confirm this bug is back (I originally reported #6012)

  • OS: Debian 10
  • jellyfin 10.7.6-1
  • virtualization: KVM
  • apache2 2.4.46-4~bpo10+1
  • chromium 90.0.4430.212-1~deb10u1 or firefox 78.12.0esr-1~deb10u1
  • plugins: LDAP, Open Subtitles
  • Storage: local

It doesn't look like this was caused by a jellyfin upgrade, my last upgrade was 10.7.5-1 -> 10.7.6-1 on 2021-06-20, and the problem only started appearing on July 10-11

@BeecherNetworks
Copy link

Same problem here, can't get logged in on my Nvidia Shield or the Android app, can't access some config screens on everything else. Simple fixes don't work, don't want to recreate multiple users. Any workaround that work? If I can't watch on my TV.....

@sweisgerber
Copy link

Related to: jellyfin/jellyfin-web#2507

Workaround: jellyfin/jellyfin-web#2507 (comment) (w/ clarifications in: jellyfin/jellyfin-web#2507 (comment))

@cvium
Copy link
Member

cvium commented Sep 7, 2021

Fixed in 10.7.7 #6512

@cvium cvium closed this as completed Sep 7, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

6 participants