Unable to save settings #978

Closed
opened 2026-02-06 20:20:01 +03:00 by OVERLORD · 16 comments
Owner

Originally created by @BlackSiO2 on GitHub (Oct 11, 2019).

Describe the bug
Settings can't be saved on any page that has a save button.

To Reproduce

  1. Go to any page that has a save button eg Dashboard - Playback.
  2. Click on Save.
  3. Witness a never ending loading spinner.
  4. Settings are never saved.

Expected behavior
Settings being saved.

Logs

System.InvalidOperationException: Sequence contains no matching element
   at System.Linq.Enumerable.First[TSource](IEnumerable`1 source, Func`2 predicate)
   at Emby.Server.Implementations.AppBase.BaseConfigurationManager.GetConfigurationType(String key)
   at MediaBrowser.Api.ConfigurationService.Post(UpdateNamedConfiguration request)
   at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task)
   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IRequest httpReq, HttpResponse httpRes, ILogger logger, CancellationToken cancellationToken)
   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken)

System (please complete the following information):

  • OS: [Windows but probably any]
  • Browser: [Any]
  • Jellyfin Version: [e.g. 10.4.0 Nightly 10/10]
  • Reverse proxy: [No]

Note by @JustAMan: edited logs for clarity

Originally created by @BlackSiO2 on GitHub (Oct 11, 2019). **Describe the bug** Settings can't be saved on any page that has a save button. **To Reproduce** 1. Go to any page that has a save button eg Dashboard - Playback. 2. Click on Save. 3. Witness a never ending loading spinner. 4. Settings are never saved. **Expected behavior** Settings being saved. **Logs** ```[ERR] Error processing request System.InvalidOperationException: Sequence contains no matching element at System.Linq.Enumerable.First[TSource](IEnumerable`1 source, Func`2 predicate) at Emby.Server.Implementations.AppBase.BaseConfigurationManager.GetConfigurationType(String key) at MediaBrowser.Api.ConfigurationService.Post(UpdateNamedConfiguration request) at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task) at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IRequest httpReq, HttpResponse httpRes, ILogger logger, CancellationToken cancellationToken) at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken) ``` **System (please complete the following information):** - OS: [Windows but probably any] - Browser: [Any] - Jellyfin Version: [e.g. 10.4.0 Nightly 10/10] - Reverse proxy: [No] **Note by @JustAMan**: edited logs for clarity
OVERLORD added the questionsupport labels 2026-02-06 20:20:01 +03:00
Author
Owner

@JustAMan commented on GitHub (Oct 15, 2019):

Can you provide more logs? I think something is messed up with your configuration, so hopefully there's more errors in logs which could explain this issue.
It would be ideal if you could shutdown server, remove logs, start server, reproduce the issue and post the logs (so it's only relevant information in there). Don't forget to sanitise the logs removing any sensitive information!

@JustAMan commented on GitHub (Oct 15, 2019): Can you provide more logs? I think something is messed up with your configuration, so hopefully there's more errors in logs which could explain this issue. It would be ideal if you could shutdown server, remove logs, start server, reproduce the issue and post the logs (so it's only relevant information in there). Don't forget to sanitise the logs removing any sensitive information!
Author
Owner

@onny commented on GitHub (Oct 15, 2019):

@BlackSiO2 Also please provide the Jellyfin version you are using and what kind of setup (Docker/Windows/Linux etc)

@onny commented on GitHub (Oct 15, 2019): @BlackSiO2 Also please provide the Jellyfin version you are using and what kind of setup (Docker/Windows/Linux etc)
Author
Owner

@BlackSiO2 commented on GitHub (Oct 15, 2019):

@onny Its in the bug report.

@JustAMan From futher testing this issue appears to only happen when upgrading from 10.4.0 Release to 10.4.0 10/10 nighly. If I install the 10.4.0 10/10 nightly as a fresh install the issue does not exist.

@BlackSiO2 commented on GitHub (Oct 15, 2019): @onny Its in the bug report. @JustAMan From futher testing this issue appears to only happen when upgrading from 10.4.0 Release to 10.4.0 10/10 nighly. If I install the 10.4.0 10/10 nightly as a fresh install the issue does not exist.
Author
Owner

@justinfenn commented on GitHub (Oct 16, 2019):

I'm seeing something similar with version 10.4.0 in Docker on Linux. When trying to update a user profile (e.g. make admin), I get the spinner and the update never seems to take place.

Logs:

Oct 15 14:57:27 host docker[1164008]: System.FormatException: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
Oct 15 14:57:27 host docker[1164008]:    at System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException)
Oct 15 14:57:27 host docker[1164008]:    at System.Guid.TryParseGuidWithNoStyle(ReadOnlySpan`1 guidString, GuidResult& result)
Oct 15 14:57:27 host docker[1164008]:    at System.Guid.TryParseGuid(ReadOnlySpan`1 guidString, GuidStyles flags, GuidResult& result)
Oct 15 14:57:27 host docker[1164008]:    at System.Guid..ctor(String g)
Oct 15 14:57:27 host docker[1164008]:    at MediaBrowser.Api.UserService.Post(UpdateUser request)
Oct 15 14:57:27 host docker[1164008]:    at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task)
Oct 15 14:57:27 host docker[1164008]:    at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IRequest httpReq, HttpResponse httpRes, ILogger logger, CancellationToken cancellationToken)
Oct 15 14:57:27 host docker[1164008]:    at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken)

If it matters, this is for a user that was created with version 10.4.0. The user ids that show up in the query string do not appear to be UUIDs/GUIDs.

@justinfenn commented on GitHub (Oct 16, 2019): I'm seeing something similar with version 10.4.0 in Docker on Linux. When trying to update a user profile (e.g. make admin), I get the spinner and the update never seems to take place. Logs: ``` Oct 15 14:57:27 host docker[1164008]: System.FormatException: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). Oct 15 14:57:27 host docker[1164008]: at System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException) Oct 15 14:57:27 host docker[1164008]: at System.Guid.TryParseGuidWithNoStyle(ReadOnlySpan`1 guidString, GuidResult& result) Oct 15 14:57:27 host docker[1164008]: at System.Guid.TryParseGuid(ReadOnlySpan`1 guidString, GuidStyles flags, GuidResult& result) Oct 15 14:57:27 host docker[1164008]: at System.Guid..ctor(String g) Oct 15 14:57:27 host docker[1164008]: at MediaBrowser.Api.UserService.Post(UpdateUser request) Oct 15 14:57:27 host docker[1164008]: at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task) Oct 15 14:57:27 host docker[1164008]: at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IRequest httpReq, HttpResponse httpRes, ILogger logger, CancellationToken cancellationToken) Oct 15 14:57:27 host docker[1164008]: at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken) ``` If it matters, this is for a user that was created with version 10.4.0. The user ids that show up in the query string do not appear to be UUIDs/GUIDs.
Author
Owner

@JustAMan commented on GitHub (Oct 16, 2019):

@BlackSiO2 @justinfenn can you test if https://github.com/jellyfin/jellyfin/pull/1898 fixes what you see?

@JustAMan commented on GitHub (Oct 16, 2019): @BlackSiO2 @justinfenn can you test if https://github.com/jellyfin/jellyfin/pull/1898 fixes what you see?
Author
Owner

@justinfenn commented on GitHub (Oct 16, 2019):

@JustAMan I'm having a lot of trouble building that branch. It looks like the .NET core version in the Dockerfile is wrong, but even when I change that to 3.0 I run into problems later in the build.

I'll try a few other things, but any tips on building with Docker would be appreciated.

Edit: created #1906 for build issue

@justinfenn commented on GitHub (Oct 16, 2019): @JustAMan I'm having a lot of trouble building that branch. It looks like [the .NET core version in the Dockerfile is wrong](https://github.com/jellyfin/jellyfin/blob/master/Dockerfile#L1), but even when I change that to 3.0 I run into problems later in the build. I'll try a few other things, but any tips on building with Docker would be appreciated. **Edit:** created #1906 for build issue
Author
Owner

@justinfenn commented on GitHub (Oct 22, 2019):

I retried this with a combination of #1898 and #1918, and I'm still getting the Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) exception. This error could be a separate issue from the initial one in this thread even though the symptoms look pretty similar on first glance.

@justinfenn commented on GitHub (Oct 22, 2019): I retried this with a combination of #1898 and #1918, and I'm still getting the `Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)` exception. This error could be a separate issue from the initial one in this thread even though the symptoms look pretty similar on first glance.
Author
Owner

@JustAMan commented on GitHub (Oct 24, 2019):

@Bond-009 any ideas?

@JustAMan commented on GitHub (Oct 24, 2019): @Bond-009 any ideas?
Author
Owner

@justinfenn commented on GitHub (Oct 25, 2019):

I think I tracked my issue down to running behind a reverse proxy. @BlackSiO2 isn't using one, so maybe we are having different issues.

Anyway, this code will get the second element of the path as the id. However, if configured behind a reverse proxy as a sub-path (e.g. example.com/jellyfin), then it will get the wrong element because there's an additional one at the beginning of the path.

It looks like there's a handful of calls to this GetPathValue method, so it could cause issues on a few pages.

@justinfenn commented on GitHub (Oct 25, 2019): I think I tracked my issue down to running behind a reverse proxy. @BlackSiO2 isn't using one, so maybe we are having different issues. Anyway, [this code](https://github.com/jellyfin/jellyfin/blob/0add74240fbb3e2d65d3b56fd90612c63e8690cf/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs#L229) will get the second element of the path as the id. However, if configured behind a reverse proxy as a sub-path (e.g. example.com/jellyfin), then it will get the wrong element because there's an additional one at the beginning of the path. It looks like there's a handful of calls to this `GetPathValue` method, so it could cause issues on a few pages.
Author
Owner

@joshuaboniface commented on GitHub (Oct 25, 2019):

That's good, it means it's related to the base url issue. So it should be fixed with 10.4.1

@joshuaboniface commented on GitHub (Oct 25, 2019): That's good, it means it's related to the base url issue. So it should be fixed with 10.4.1
Author
Owner

@BlackSiO2 commented on GitHub (Nov 4, 2019):

Can confirm, it appears to be resolved in 10.4.1

@BlackSiO2 commented on GitHub (Nov 4, 2019): Can confirm, it appears to be resolved in 10.4.1
Author
Owner

@justinfenn commented on GitHub (Nov 4, 2019):

I upgraded to 10.4.1 and still see the issue with updating user accounts. What was the base URL issue that was addressed?

@justinfenn commented on GitHub (Nov 4, 2019): I upgraded to 10.4.1 and still see the issue with updating user accounts. What was the base URL issue that was addressed?
Author
Owner

@ptasznikarium commented on GitHub (Nov 5, 2019):

I updated to 10.4.1 and still have this issue.
Server on Ubuntu Server, Bionic, headless.
Accessing on Windows via Firefox - appears that Client is on 10.4.0 .... is that normal to be on different version or did I missed something?

image

@ptasznikarium commented on GitHub (Nov 5, 2019): I updated to 10.4.1 and still have this issue. Server on Ubuntu Server, Bionic, headless. Accessing on Windows via Firefox - appears that Client is on 10.4.0 .... is that normal to be on different version or did I missed something? ![image](https://user-images.githubusercontent.com/49695985/68160478-daccdd80-ff4b-11e9-9298-84345741dcf3.png)
Author
Owner

@JustAMan commented on GitHub (Nov 6, 2019):

@Bond-009 do stacktraces above ring a bell for you?

@ptasznikarium you aren't missing something, this is a forgotten version string bump in jellyfin-web you're seeing. Nothing to worry about.

@JustAMan commented on GitHub (Nov 6, 2019): @Bond-009 do stacktraces above ring a bell for you? @ptasznikarium you aren't missing something, this is a forgotten version string bump in jellyfin-web you're seeing. Nothing to worry about.
Author
Owner

@funtastix commented on GitHub (Nov 12, 2019):

Had a similar issue with saving various settings, especially for plugins. I think this must be related to parsing urls and the new baseurl. I worked around this by removing the baseurl in networking. I don't use a reverse proxy.

@funtastix commented on GitHub (Nov 12, 2019): Had a similar issue with saving various settings, especially for plugins. I think this must be related to parsing urls and the new baseurl. I worked around this by removing the baseurl in networking. I don't use a reverse proxy.
Author
Owner

@Makeshift commented on GitHub (Nov 13, 2019):

Just to add some extra info for this version, I have the same issue on 10.4.1 both with and without a reverse proxy. Saving User settings specifically result in an infinite spin and a 500, with the Guid error in the logs:

[20:53:00] [ERR] Error processing request
System.FormatException: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
   at System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException)
   at System.Guid.TryParseGuidWithNoStyle(ReadOnlySpan`1 guidString, GuidResult& result)
   at System.Guid.TryParseGuid(ReadOnlySpan`1 guidString, GuidStyles flags, GuidResult& result)
   at System.Guid..ctor(String g)
   at MediaBrowser.Api.UserService.Post(UpdateUser request)
   at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task)
   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IRequest httpReq, HttpResponse httpRes, ILogger logger, CancellationToken cancellationToken)
   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken)

Happens with both new and old users (including ones made right before).

Removing the default base URL also resolves it for me.

@Makeshift commented on GitHub (Nov 13, 2019): Just to add some extra info for this version, I have the same issue on 10.4.1 both with and without a reverse proxy. Saving User settings specifically result in an infinite spin and a 500, with the Guid error in the logs: ``` [20:53:00] [ERR] Error processing request System.FormatException: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). at System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException) at System.Guid.TryParseGuidWithNoStyle(ReadOnlySpan`1 guidString, GuidResult& result) at System.Guid.TryParseGuid(ReadOnlySpan`1 guidString, GuidStyles flags, GuidResult& result) at System.Guid..ctor(String g) at MediaBrowser.Api.UserService.Post(UpdateUser request) at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task) at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost httpHost, IRequest httpReq, HttpResponse httpRes, ILogger logger, CancellationToken cancellationToken) at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken) ``` Happens with both new and old users (including ones made right before). Removing the default base URL also resolves it for me.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/jellyfin#978