[Issue]: Play progress does not show on cards or continue watching in 10.9.5 #5951

Closed
opened 2026-02-07 02:43:06 +03:00 by OVERLORD · 3 comments
Owner

Originally created by @ConnorS1110 on GitHub (Jun 7, 2024).

Please describe your bug

This appears to be a regression in 10.9.5. When I watch something, don't finish it, prior to this version, I would see the progress on the home page in the Continue Watching section, and also on the the media card for the episode/movie/whatever. Now, a card never appears for the media item in the Continue Watching section, nor does it indicate any watch progress on the media card. It also does not count a piece of media as watched anymore (ie I am watching a TV show with 12 episodes, I watch one, and it still says I have 12 episodes remaining instead of 11). This strangely just appears to be a visual issue. If I watch something part of the way through and start watching again, it will resume from the correct spot.

Reproduction Steps

  1. Watch any piece of media partially
  2. Go back
  3. Check Continue Watching and the card for the piece of media and note that the continue watching card is missing and there is no progress on the card
  4. Try to resume the piece of media and note it resumes from the correct place

Jellyfin Version

10.9.0

if other:

10.9.5

Environment

- OS: Ubuntu 22.04 LTS
- Linux Kernel: none
- Virtualization:
- Clients: All
- Browser: All
- FFmpeg Version:
- Playback Method: Any
- Hardware Acceleration:
- GPU Model:
- Plugins:
- Reverse Proxy: Caddy
- Base URL:
- Networking:
- Storage: local

Jellyfin logs

[2024-06-06 19:09:58.537 -04:00] [ERR] Error processing request. URL "POST" "/Sessions/Playing/Progress".
Microsoft.Data.Sqlite.SqliteException (0x80004005): SQLite Error 8: 'attempt to write a readonly database'.
   at Microsoft.Data.Sqlite.SqliteDataReader.NextResult()
   at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior behavior)
   at Emby.Server.Implementations.Data.SqliteUserDataRepository.SaveUserData(SqliteConnection db, Int64 internalUserId, String key, UserItemData userData)
   at Emby.Server.Implementations.Data.SqliteUserDataRepository.PersistUserData(Int64 internalUserId, String key, UserItemData userData, CancellationToken cancellationToken)
   at Emby.Server.Implementations.Library.UserDataManager.SaveUserData(User user, BaseItem item, UserItemData userData, UserDataSaveReason reason, CancellationToken cancellationToken)
   at Emby.Server.Implementations.Session.SessionManager.OnPlaybackProgress(PlaybackProgressInfo info, Boolean isAutomated)
   at Jellyfin.Api.Controllers.PlaystateController.ReportPlaybackProgress(PlaybackProgressInfo playbackProgressInfo)
   at lambda_method855(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

Please attach any browser or client logs here

No response

Please attach any screenshots here

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct
Originally created by @ConnorS1110 on GitHub (Jun 7, 2024). ### Please describe your bug This appears to be a regression in 10.9.5. When I watch something, don't finish it, prior to this version, I would see the progress on the home page in the `Continue Watching` section, and also on the the media card for the episode/movie/whatever. Now, a card never appears for the media item in the `Continue Watching` section, nor does it indicate any watch progress on the media card. It also does not count a piece of media as watched anymore (ie I am watching a TV show with 12 episodes, I watch one, and it still says I have 12 episodes remaining instead of 11). This strangely just appears to be a visual issue. If I watch something part of the way through and start watching again, it will resume from the correct spot. ### Reproduction Steps 1. Watch any piece of media partially 2. Go back 3. Check `Continue Watching` and the card for the piece of media and note that the continue watching card is missing and there is no progress on the card 4. Try to resume the piece of media and note it resumes from the correct place ### Jellyfin Version 10.9.0 ### if other: 10.9.5 ### Environment ```markdown - OS: Ubuntu 22.04 LTS - Linux Kernel: none - Virtualization: - Clients: All - Browser: All - FFmpeg Version: - Playback Method: Any - Hardware Acceleration: - GPU Model: - Plugins: - Reverse Proxy: Caddy - Base URL: - Networking: - Storage: local ``` ### Jellyfin logs ```shell [2024-06-06 19:09:58.537 -04:00] [ERR] Error processing request. URL "POST" "/Sessions/Playing/Progress". Microsoft.Data.Sqlite.SqliteException (0x80004005): SQLite Error 8: 'attempt to write a readonly database'. at Microsoft.Data.Sqlite.SqliteDataReader.NextResult() at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior behavior) at Emby.Server.Implementations.Data.SqliteUserDataRepository.SaveUserData(SqliteConnection db, Int64 internalUserId, String key, UserItemData userData) at Emby.Server.Implementations.Data.SqliteUserDataRepository.PersistUserData(Int64 internalUserId, String key, UserItemData userData, CancellationToken cancellationToken) at Emby.Server.Implementations.Library.UserDataManager.SaveUserData(User user, BaseItem item, UserItemData userData, UserDataSaveReason reason, CancellationToken cancellationToken) at Emby.Server.Implementations.Session.SessionManager.OnPlaybackProgress(PlaybackProgressInfo info, Boolean isAutomated) at Jellyfin.Api.Controllers.PlaystateController.ReportPlaybackProgress(PlaybackProgressInfo playbackProgressInfo) at lambda_method855(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_ ### Please attach any browser or client logs here _No response_ ### Please attach any screenshots here _No response_ ### Code of Conduct - [X] I agree to follow this project's Code of Conduct
OVERLORD added the bug label 2026-02-07 02:43:06 +03:00
Author
Owner

@jellyfin-bot commented on GitHub (Jun 7, 2024):

Hi, it seems like your issue report has the following item(s) that need to be addressed:

  • You have not filled in the environment completely.

This is an automated message, currently under testing. Please file an issue here if you encounter any problems.

@jellyfin-bot commented on GitHub (Jun 7, 2024): Hi, it seems like your issue report has the following item(s) that need to be addressed: - You have not filled in the environment completely. This is an automated message, currently under testing. Please file an issue [here](https://github.com/jellyfin/jellyfin-triage-scripts/issues) if you encounter any problems.
Author
Owner

@ConnorS1110 commented on GitHub (Jun 7, 2024):

Sorry I think this is irrelevant now. This appears to be fixed in 10.9.6, but I am looking at the PRs in the most recent release and I am not sure what fixed the issue? I guess I will just monitor for now and hope for the best.

@ConnorS1110 commented on GitHub (Jun 7, 2024): Sorry I think this is irrelevant now. This appears to be fixed in 10.9.6, but I am looking at the PRs in the most recent release and I am not sure what fixed the issue? I guess I will just monitor for now and hope for the best.
Author
Owner

@Bond-009 commented on GitHub (Jun 7, 2024):

Sorry I think this is irrelevant now. This appears to be fixed in 10.9.6, but I am looking at the PRs in the most recent release and I am not sure what fixed the issue? I guess I will just monitor for now and hope for the best.

https://github.com/jellyfin/jellyfin/pull/11986 should have fixed the 'attempt to write a readonly database' error

@Bond-009 commented on GitHub (Jun 7, 2024): > Sorry I think this is irrelevant now. This appears to be fixed in 10.9.6, but I am looking at the PRs in the most recent release and I am not sure what fixed the issue? I guess I will just monitor for now and hope for the best. https://github.com/jellyfin/jellyfin/pull/11986 should have fixed the 'attempt to write a readonly database' error
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/jellyfin#5951