Items in playlists cannot be moved. The item goes back in the interface back to its previous location and an error "Index was outside the bounds of the array" appears in the logs. #12892
Description
This issue respects the following points:
- This is a bug, not a question or a configuration issue; Please visit our forum or chat rooms first to troubleshoot with volunteers, before creating a report. The links can be found here.
- This issue is not already reported on GitHub (I've searched it).
- I'm using an up to date version of Jellyfin Server stable, unstable or master; We generally do not support previous older versions. If possible, please update to the latest version before opening an issue.
- I agree to follow Jellyfin's Code of Conduct.
- This report addresses only a single issue; If you encounter multiple issues, kindly create separate reports for each one.
Description of the bug
After upgrading to 10.10.0, playlist items can not be moved. (Downgrading back to 10.9.11 solves the issues, so it seems likely due to the upgrade). I have previously had a similar issue where a playlist containing a removed item could no longer be rearranged or edited (that seemed like it was fixed). I tried creating new playlists, restarting the docker container, restarting the docker service and restarting the system. I also tried connecting through the local ip and http:// rather than through a nginx-proxy-manager and https://. Nothing solved the issue until I reverted the docker container to the 10.9.11 image.
Since part of the error in the logs said "Index was outside the bounds of the array," I tried moving an item to different places but all locations in a playlist led to the same error.
Reproduction steps
- Create a playlist and add items.
- Rearrange the items in the jellyfin interface.
What is the current bug behavior?
The playlist order does not change and an error appears in the logs saying " [ERR] [31] Jellyfin.Api.Middleware.ExceptionMiddleware: Error processing request. URL POST /Playlists/c58b999842431004eb431fecfc2037f2/Items/be6a6882828d47dfba59eaa928003ca1/Move/0.
System.IndexOutOfRangeException: Index was outside the bounds of the array."
What is the expected correct behavior?
The playlist order changes.
Jellyfin Server version
10.10.0+
Specify commit id
No response
Specify unstable release number
No response
Specify version number
No response
Specify the build version
10.10.0
Environment
- OS: Debian Bullseye
- Linux Kernel: 6.1.0-25
- Virtualization: Docker
- Clients: Browser, android, iOS
- Browser: Chrome
- FFmpeg Version:
- Playback Method: Direct Play
- Hardware Acceleration: none
- GPU Model:
- Plugins:
- Reverse Proxy: nginx-proxy-manager
- Base URL:
- Networking:
- Storage: localJellyfin logs
[17:31:46] [ERR] [31] Jellyfin.Api.Middleware.ExceptionMiddleware: Error processing request. URL POST /Playlists/c58b999842431004eb431fecfc2037f2/Items/be6a6882828d47dfba59eaa928003ca1/Move/0.
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Emby.Server.Implementations.Playlists.PlaylistManager.MoveItemAsync(String playlistId, String entryId, Int32 newIndex)
at Jellyfin.Api.Controllers.PlaylistsController.MoveItem(String playlistId, String itemId, Int32 newIndex)
at lambda_method1267(Closure, Object)
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
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|25_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.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Jellyfin.Api.Middleware.ServerStartupMessageMiddleware.Invoke(HttpContext httpContext, IServerApplicationHost serverApplicationHost, ILocalizationManager localizationManager)
at Jellyfin.Api.Middleware.WebSocketHandlerMiddleware.Invoke(HttpContext httpContext, IWebSocketManager webSocketManager)
at Jellyfin.Api.Middleware.IPBasedAccessValidationMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager)
at Jellyfin.Api.Middleware.LanFilteringMiddleware.Invoke(HttpContext httpContext, INetworkManager networkManager, IServerConfigurationManager serverConfigurationManager)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Jellyfin.Api.Middleware.QueryStringDecodingMiddleware.Invoke(HttpContext httpContext)
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.Api.Middleware.RobotsRedirectionMiddleware.Invoke(HttpContext httpContext)
at Jellyfin.Api.Middleware.LegacyEmbyRouteRewriteMiddleware.Invoke(HttpContext httpContext)
at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context)
at Jellyfin.Api.Middleware.ResponseTimeMiddleware.Invoke(HttpContext context, IServerConfigurationManager serverConfigurationManager)
at Jellyfin.Api.Middleware.ExceptionMiddleware.Invoke(HttpContext context)FFmpeg logs
No response
Client / Browser logs
No response
Relevant screenshots or videos
No response
Additional information
No response
Metadata
Assignees
Labels
Type
Projects
Status
Fixed
Activity