mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-05-30 23:40:40 +02:00
[Bug]: Continue Listening no longer updating (v2.24.0) #2820
Closed
opened 2026-04-25 00:10:52 +02:00 by adam
·
30 comments
No Branch/Tag Specified
master
book_tags_genres_dedupe
episode_download_fallback
Issue-4540-SortBy-StartedDate-and-FinishedDate
episode_meta_tagging
fix_authorize_race_condition
redirect_transcode_requests
progress_updated_sort
fix_ereader_socket_event
fix_change_empty_root_password
fix_podcast_session_track_index
fix_set_token
session_modal_user
localize_durations
fix_oidc_create_user
jwt_auth_refactor
fix_scanner_deleting_single_file_books
fix_mediaprogress_updatedat_2
experimental_next_client
podcast_episode_duration
episode-timestamps-clickable
book_author_secondary_sort_title
podcast_useragents
pathexists_user_access
fix_pathexists_join
book_author_secondary_sort
clean_duplicate_mediaprogress
sanitize_html_description
trix_prevent_attachments
check_path_api_fix
fix_mediaprogress_updatedat
increase_express_json_limit
fix_dockerfile_nunicode
search_episodes
audiobook_tools_update
episode_secondary_sorts
hls_stream_url_update
new_session_track_endpoint
audiobook_tools_enhancements
watcher_rescans_update
player_track_tooltip
fix_exclude_prefixes_crash
socket_item_events
fix_podcast_episode_scanner_promise
new_stats_controller
count_cache_for_userpermissions
parsing-opf-v3
validate_migration_files
fix-quick-match-all-crash
fix-chapter-end-sleep-timer
stringify_sequelize_query
remove-col-ambiguity
fix_next_prev_edit_description
details_trim_whitespace
fix_content_url_basepath
fix_logger_fatal
progress_bar_visibility
batch-edit-populate-map-details
feed_generator_updates
bookmark-modal-updates
migrate-library-item-in-scanner
migrate-new-library-items
migrate-podcasts-new-library-item-2
migrate-podcasts-new-library-item
fix-remove-episode-from-playlist
playback-session-use-new-library-item
refactor-library-item
fix-heatmap-caption
feed-episodes-upsert
share-media-player-media-session-api
remove-old-playlist
remove_old_collection_object
plugin-implementation-demo
feed_migration
refactor-feeds-from-item
fix_remove_authors_no_books
v2.17.3-fk-constraints-migration
migrations-first-upgrade
sqlite_2
feature/nuxt-target-server
waveform
sqlite
playlists
video
v2.35.1
v2.35.0
v2.34.0
v2.33.2
v2.33.1
v2.33.0
v2.32.1
v2.32.0
v2.31.0
v2.30.0
v2.29.0
v2.28.0
v2.27.0
v2.26.3
v2.26.2
v2.26.1
v2.26.0
v2.25.1
v2.25.0
v2.24.0
v2.23.0
v2.22.0
v2.21.0
v2.20.0
v2.19.5
v2.19.4
v2.19.3
v2.19.2
v2.19.1
v2.19.0
v2.18.1
v2.18.0
v2.17.7
v2.17.6
v2.17.5
v2.17.4
v2.17.3
v2.17.2
v2.17.1
v2.17.0
v2.16.2
v2.16.1
v2.16.0
v2.15.1
v2.15.0
v2.14.0
v2.13.4
v2.13.3
v2.13.2
v2.13.1
v2.13.0
v2.12.3
v2.12.2
v2.12.1
v2.12.0
v2.11.0
v2.10.1
v2.10.0
v2.9.0
v2.8.1
v2.8.0
v2.7.2
v2.7.1
v2.7.0
v2.6.0
v2.5.0
v2.4.4
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.3.5
v2.3.4
v2.3.3
v2.3.2
v2.3.1
v2.3.0
v2.2.23
v2.2.22
v2.2.21
v2.2.20
v2.2.19
v2.2.18
v2.2.17
v2.2.16
v2.2.15
v2.2.14
v2.2.13
v2.2.12
v2.2.11
v2.2.10
v2.2.9
v2.2.8
v2.2.7
v2.2.6
v2.2.5
v2.2.4
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.5
v2.1.4
v2.1.3
v2.1.2
v2.1.1
v2.1.0
v2.0.24
v2.0.23
v2.0.22
v2.0.21
v2.0.20
v2.0.19
v2.0.18
v2.0.17
v2.0.16
v2.0.15
v2.0.14
v2.0.13
v2.0.12
v2.0.11
v2.0.10
v2.0.9
v2.0.8
v2.0.7
v2.0.6
v2.0.5
v2.0.4
v2.0.3
v2.0.2
v2.0.1
v1.7.2
v1.7.1
v1.7.0
v1.6.0
v1.5.5
v1.5.0
v1.4.11
v1.4.9
v1.4.7
v1.4.6
v1.4.4
v1.4.2
v1.4.0
v1.4.1
v1.3.4
v1.3.3
v1.3.1
v1.2.8
v1.2.6
v1.2.5
v1.2.4
v1.2.1
v1.1.15
v1.1.14
v1.1.13
v1.1.12
v1.1.11
v1.1.10
v1.1.9
v1.1.8
v1.0.0
0.9.61-beta.0
0.9.61-beta
Labels
Clear labels
authentication
backlog
bug
chapter editor
config-issue
ebooks
encoding/embedding
enhancement
help wanted
listening sessions & progress
planned
possible plugin
progress sync
pull-request
sorting/filtering/searching
unable to reproduce
upload
users & permissions
waiting
Mirrored from GitHub Pull Request
No Label
bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
Assignees
adam (Adam Melkus)
Clear assignees
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/audiobookshelf#2820
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @WillGunn on GitHub (Jun 4, 2025).
What happened?
After updating my docker instance from v2.23.x to v2.24.0, my continue listening on the server no longer updates. Listening to a book already on the list does not move it to the top of the list, and listening to a brand new book does not add it to the continue listening list at all.
Where the playback occurs does not matter, I see the same behavior for listening sessions via the webapp or mobile app. The mobile app in offline mode correctly displays the continue listening order, but when connected to the server, its continue listening list is overridden by the data from the server.
What did you expect to happen?
When a listening session starts and ends, the book is added to/moved to the top of the continue listening list on the homepage of the webapp.
Steps to reproduce the issue
Audiobookshelf version
v2.24.0
How are you running audiobookshelf?
Docker
What OS is your Audiobookshelf server hosted from?
Linux
If the issue is being seen in the UI, what browsers are you seeing the problem on?
Firefox
Logs
Additional Notes
No response
@maodun96 commented on GitHub (Jun 4, 2025):
I seem to be experiencing a similar issue.
My use case: I frequently switch between listening to audiobooks on my iPad and iPhone(plappa). Therefore, the progress synchronization feature is extremely important to me.
After updating the version, it seems the progress is no longer perfectly syncing with the ABS server, though it occasionally works. Initially, I thought it might be an issue caused by my reverse proxy. Now I've discovered the problem appears to have started two or three days ago, which coincides with the release of v2.24.0. (I'm more inclined to think it's version-related, as I'm experiencing the same issue even when accessing via http+IP)
I've now rolled back the ABS server (unraid docker) to v2.23.0 and the sync function seems to be back to normal. If there are any exceptions, I will report them here again.
@WillGunn commented on GitHub (Jun 4, 2025):
@maodun96 that looks like a different issue. The progress syncing is working, but the order of the Continue Listening section of the homepage is not updating to reflect the most recent book that is listened to.
@maodun96 commented on GitHub (Jun 4, 2025):
I think this is a different bug caused by the same reason.
@advplyr commented on GitHub (Jun 6, 2025):
Are you using plappa? There is a known bug with the way plappa is making API requests that is creating 2 media progress records for the same book.
@WillGunn commented on GitHub (Jun 8, 2025):
@advplyr i do not. I see the same issue playing books via the Audiobookshelf apps as I do through the Audiobookshelf web browser interface.
Are there debug logs I can turn on and upload?
@advplyr commented on GitHub (Jun 8, 2025):
The update that was made in v2.24.0 was to set the
updatedAttime of the media progress to the timestamp that is sent in from the device. If you are saying it doesn't matter if you listen in the web app or the mobile app then I don't see how the update would have something to do with it.In this case it would probably be more helpful to look at the database directly if you are comfortable with that.
It is a sqlite database that is in the
/configfolder.Sort the
mediaProgressestable byupdatedAtdescending and filter byisFinished=0 AND currentTime>0This is basically what that shelf is pulling by library.
@WillGunn commented on GitHub (Jun 8, 2025):
Attempting to open the db file locally with DB Browser for SQLite which I've used in the past for other projects I get
No errors about that in the startup logs of the service fwiw:
@nichwall commented on GitHub (Jun 8, 2025):
DB browser uses an old version of SQLite which is not compatible with updates to ABS.
https://github.com/advplyr/audiobookshelf/issues/4134
@WillGunn commented on GitHub (Jun 8, 2025):
Gotcha, what program are you using in your screenshot above then?
@advplyr commented on GitHub (Jun 8, 2025):
I'm using DBeaver on Windows
@WillGunn commented on GitHub (Jun 8, 2025):
That works, it appears that the date there isn't being updated:

compared to my user's listening sessions:

@advplyr commented on GitHub (Jun 8, 2025):
What about the
playbackSessionstable? In that table you will see themediaItemIdcolumn and you can take the UUID in that column and search for it in themediaProgressestable. Then you can make sure the playback session you are seeing in the web client is linked to a media progress item in the database.@WillGunn commented on GitHub (Jun 8, 2025):
the
mediaItemIdinplaybackSessionsdoes indeed match the id inmediaProgressesThis is my first time using dbeaver so I'm not sure if its just showing foreign key to primary key matches, but in the Diagram tab for the tables, they aren't connected.
@WillGunn commented on GitHub (Jun 8, 2025):
playback sessions filtered to a book showing a couple dozen since the updatedAt timestamp in media progresses:
@advplyr commented on GitHub (Jun 8, 2025):
The diagram is normal because that column is a polymorphic association to
booksandpodcastEpisodes.I was doing some testing with DBeaver on my production server database and it looks like the sqlite driver in DBeaver isn't updating the records after the initial connection when I'm connecting over a network drive.
I got SQlite studio and tested with that and can see that the
updatedAttime is updating every 10 seconds (first sync is after 30 seconds) while listening in the browser.Are you accessing the database over a network drive with DBeaver?
@WillGunn commented on GitHub (Jun 9, 2025):
No, I shut the container down, then copied the db file to my local windows machine to view.
@WillGunn commented on GitHub (Jun 9, 2025):
Ok, I listened for more than 30 seconds in the browser and it moved that item to the top of the continue listening queue, so it does work from the browser. I believe it used to move it immediately with any amount of listening, but this is fine.
My main listening source is via the official ios app via testflight, and that does not appear to update the list anymore. I usually start a book then immediately put the app into the background, but for a test I left it open for more than 30 seconds and it did not update the continue listening list order.
@Xelis commented on GitHub (Jun 13, 2025):
Having the same issue, I use the android app and once it connects to the server it switches the order to whatever order it was set to after I updated. Something isn't syncing up right between the apps and the server.
@advplyr commented on GitHub (Jun 13, 2025):
Are these books you have downloaded to the device? That would be a separate issue than we have been investigating if that is the case
@Xelis commented on GitHub (Jun 14, 2025):
Yeah, if I play downloaded books the server doesn't update the order, if I stream a book it goes to the front as you'd expect.
EDIT: Downgraded to 2.23.0 and its working as expected now.
@WillGunn commented on GitHub (Jun 16, 2025):
I basically only listen to books that I have downloaded, but yes it looks like if I delete the local file, then stream it, it does update the Continue Listening order correctly.
@lcharlick commented on GitHub (Jul 1, 2025):
@advplyr fairly sure this is caused by your change here. In cases where
lastUpdateis provided (i.e. for local/offline sessions),updatedAtisn't being updated at all. I'm guessing sequelize skips updating that field altogether ifsilent: trueis provided as an option.I had a quick go at fixing it, but couldn't find a way to force sequelize to a) take the custom
lastUpdatevalue and b) not clobber the value on save.@advplyr commented on GitHub (Jul 2, 2025):
Thanks @lcharlick, that is correct. I was able to reproduce the issue and fix it but it did require an additional query. Described in #4454
@WillGunn commented on GitHub (Jul 2, 2025):
Thanks @advplyr for the fix and @lcharlick for digging deeper than I had time to. Once a release is ready I'll test with my iOS app to validate.
Edit: Actually it looks like :edge should include the fix if I'm reading the build action right, let me go test that.
@WillGunn commented on GitHub (Jul 2, 2025):
@advplyr can confirm that running :edge, the status from downloaded items on iOS is correctly updating Continue Watching again!
@advplyr commented on GitHub (Jul 2, 2025):
Thanks for testing!
@epipenRX commented on GitHub (Jul 9, 2025):
i'm seeing this issue on audiobookshelf (android app) and web app
linux (non docker) server v2.25.1
rebooted server and it seemed okay for the first 2 books i tried listening to, then it froze the "continue listening" list again
@nichwall commented on GitHub (Jul 9, 2025):
This is already fixed and waiting for release
@epipenRX commented on GitHub (Jul 9, 2025):
got it. thought it was closed for a version that was already released and i was seeing it in this newer version. thanks man
@github-actions[bot] commented on GitHub (Jul 12, 2025):
Fixed in v2.26.0.