mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-05-30 23:40:40 +02:00
[Bug]: New library scan crashes server #1814
Closed
opened 2026-04-24 23:58:57 +02:00 by adam
·
21 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#1814
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 @ghost on GitHub (Mar 15, 2024).
Describe the issue
This is on a fresh install of audiobookshelf.
I added a new library for ebooks. I pointed the folder to my calibre data location and started the first scan. This maxes out the ram and eventually the server becomes unresponsive and I have to reboot the VM.
At first I tried with 4GB of RAM, and it crashed. I gave it 8GB and it crashed again. This is with around ~150 ebooks, so nothing big (5.4GB in total).
I have seen similar issues where the culprit is ffprobe spawning without limit, but it seems it is not the case here. All the ram is taken up by the node process, only 1/2 instances of ffprobe are running.
Steps to reproduce the issue
Audiobookshelf version
v2.8.0
How are you running audiobookshelf?
Docker
@advplyr commented on GitHub (Mar 15, 2024):
What are the file formats of the ebooks you are scanning in? If you check the scan log is there a place where it stops that we can see?
@ghost commented on GitHub (Mar 15, 2024):
These are the logs from the container:
That last part keeps repeating until I kill the process
@ghost commented on GitHub (Mar 15, 2024):
also, regarding the file formats:
The
.dbare calibre databases. The json is also for calibre. So it's mostly epub, mobi, pdf and azw3. The jpgs are covers, opf is calibre book metadata. Some comics too (cbr, cbz).Is any of these formats known to cause issues?
@advplyr commented on GitHub (Mar 16, 2024):
I think the
cbrcomics are having issues right now I'm still investigating. Can you take those out for a test scan?@ghost commented on GitHub (Mar 16, 2024):
yup that fixes it. both cbr and cbz seem to be causing issues.
one thing to note though, they do seem to be getting partially processed. If i start a scan with a cbr/cbz file present, it goes into the wasm error loop. if i then move the files out of the directory, this shows up in the logs:
So they do seem to be somewhat processed. I do not know much about this project so no clue why this is 😅
@Maran123 commented on GitHub (Mar 20, 2024):
I think i'm also encountering this issue with cbz files. It works if you have enough RAM and/or swap-space for the entire library of cbz files. Otherwise the memory fills up and the scan is slow/halted.
@ghost commented on GitHub (Mar 20, 2024):
this seems unfeasible for moderately big libraries.
are all book files buffered in memory at once?? 😬
also, does this happen with audiobooks too? or just cbz?
@nichwall commented on GitHub (Mar 20, 2024):
It's only with some cbz/cbr and ebook files.
@Tsamsiyu1 commented on GitHub (Mar 20, 2024):
i have the same problem. i just created a new Library and added about 40 cbz files. the first 20 where scanned but it took ages. after that it just crashes the server.
@maxcovergold commented on GitHub (Apr 11, 2024):
Tested adding comics for the first time and ran into this issue. System froze then crashed. Tried creating a small <1GB library and that completed, but noticed memory wasn't released on completion of successful scan. ABS required restart to resolve.
I also see the below error, both when memory completely fills and crashes and when scaning a small library so no crash, but memory is not released:
'wasm streaming compile failed: TypeError: Failed to parse URL from /client/dist/libarchive/wasm-gen/libarchive.wasm'
EDIT - I subsequently also tried adding a couple of issues at a time after successfully scanning in and restarting the ABS container to release memory, but after a couple of times, hit the ceiling where it would crash again. So files already scanned into library also contribute to the memory usage issue on new scan. Which means cannot add to library incrementally either.
@maxcovergold commented on GitHub (Apr 23, 2024):
Unfortunately fixing of error #2856 doesn't resolve this issue. It possibly is stopping the application from crashing, but just makes my entire Synology grind to a halt indefinitely
@Codex966 commented on GitHub (Jun 11, 2024):
Still running into this issue as well.
I added a Comics library last week, primarily with pdf, cbr, and cbz files in it and once I got to about 20~ items any scan crashes the app, requiring a restart (running Docker on UnRaid).
I've tried removing new entries to back-track if there might be a corrupt cbz file causing it, but haven't pinpointed a specific file for it yet.
My ebook/audiobook library is about 2 years old and is up to about 600 items and has no problems. Still think it might be something with how ABS is trying to scan these cbz/cbr.
(Not sure about the RAM troubleshooting though, I don't see an abnormal uptick in usage when scanning (aside from a normal amount) and I've got 128Gb of RAM on this server, my Comics library only being 13Gb so far.)
@pekempy commented on GitHub (Aug 5, 2024):
I also have this issue with .cbr files.
I've noticed that 64/75 of
The Sandmanhave processed properly, but it's having issues with the same sets of files after I delete and re-create the library (issue 1, issues 10-19). I've confirmed those files are not corrupted and have no differences to the other issues.Docker logs:
@pierrejo commented on GitHub (Aug 6, 2024):
Hi, i've the same issue. I'm on a raspberry pi with 4Gb of RAM. And i can't add my CBZ files.
I'm on the
V2.12.1of AudiobookshelfError :
I've also try to limit my container with :
Still get the error .... 😒
@danielb2 commented on GitHub (Aug 7, 2024):
I'm also having the same issues with cbr files:
Init v2.12.1
Node.js Version: v20.16.0
Platform: linux
Arch: x64
@Atfynt commented on GitHub (Aug 8, 2024):
It looks like the issue is in libarchive.js preventing it from automatically closing the archive once it has been opened adding archive.close() wherever we have Archive.open() just before returning would prevent having everything in memory all at the same time. at the very least parseComicMetadata.js parse function and extractCoverImage. it probably also needs to be added wherever the comic reader is extracting files but I have not really looked into that.
@nichwall commented on GitHub (Aug 20, 2024):
Thanks for helping track that down. I attempted a fix here https://github.com/advplyr/audiobookshelf/pull/3312 for the server crashing during a scan if you want to help test it (I don't actually have any comic files and am testing with homemade CBR/CBZ).
@advplyr commented on GitHub (Nov 23, 2024):
Is this still an issue?
@danielb2 commented on GitHub (Nov 23, 2024):
works for me 👍
another issue now that I can read it is that i can't zoom out to see all of it, but I have to scroll a lot
@danielb2 commented on GitHub (Nov 23, 2024):
also seeing this for some
@maxcovergold commented on GitHub (Jan 2, 2025):
Just to confirm that the change has resolved the problem for me. Thank you!