[Bug]: Server crash while matching #3160

Closed
opened 2026-04-25 00:14:00 +02:00 by adam · 1 comment
Owner

Originally created by @cosmo5001 on GitHub (Dec 23, 2025).

What happened?

My server crashed during a full library match with a null read error

What did you expect to happen?

successful match of the library

Steps to reproduce the issue

  1. Start a full library match with audible as the metadata provider
  2. wait

Audiobookshelf version

2.32.0

How are you running audiobookshelf?

Docker

What OS is your Audiobookshelf server hosted from?

Windows

If the issue is being seen in the UI, what browsers are you seeing the problem on?

None

Logs

2025-12-23 00:13:37.598 | [2025-12-23 02:13:37.598] INFO: [Audnexus] Searching for author "https://api.audnex.us/authors?name=the+true+story+of+china%27s+genocide+of+the+uyghurs"
2025-12-23 00:13:42.601 | [2025-12-23 02:13:42.600] ERROR: [Audnexus] Author ASIN request failed for stewart lang socket hang up
2025-12-23 00:13:50.184 | [2025-12-23 02:13:50.184] ERROR: [Audnexus] Author ASIN request failed for the true story of china's genocide of the uyghurs Request failed with status code 520
2025-12-23 00:13:50.224 | [2025-12-23 02:13:50.224] ERROR: [Audnexus] Author ASIN request failed for no escape Request failed with status code 521
2025-12-23 00:13:50.773 | [2025-12-23 02:13:50.773] WARN: [Scanner] matchLibraryItems: Match warning No audible match found for library item "No Escape - The True Story of China's Genocide of the Uyghurs"
2025-12-23 00:13:51.438 | [2025-12-23 02:13:51.437] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/Zombie Fallout/cover.jpg" from url "https://m.media-amazon.com/images/I/91DsYYvakEL.jpg"
2025-12-23 00:13:52.697 | [2025-12-23 02:13:52.696] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/The End Has Come and Gone/cover.jpg" from url "https://m.media-amazon.com/images/I/91+c2bNpzrL.jpg"
2025-12-23 00:13:54.012 | [2025-12-23 02:13:54.012] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/The End/cover.jpg" from url "https://m.media-amazon.com/images/I/91+c2bNpzrL.jpg"
2025-12-23 00:13:55.084 | [2025-12-23 02:13:55.083] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/The Book of Riley, A Zombie Tale/cover.jpg" from url "https://m.media-amazon.com/images/I/91Q-Qz5DMBL.jpg"
2025-12-23 00:13:55.587 | [2025-12-23 02:13:55.587] FATAL: [Server] Unhandled rejection: TypeError: Cannot read properties of null (reading 'length')
2025-12-23 00:13:55.587 |     at Audible.cleanResult (/app/server/providers/Audible.js:79:29)
2025-12-23 00:13:55.587 |     at /app/server/providers/Audible.js:170:53
2025-12-23 00:13:55.587 |     at Array.map (<anonymous>)
2025-12-23 00:13:55.587 |     at Audible.search (/app/server/providers/Audible.js:170:34)
2025-12-23 00:13:55.587 |     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
2025-12-23 00:13:55.587 |     at async BookFinder.getAudibleResults (/app/server/finders/BookFinder.js:191:19)
2025-12-23 00:13:55.587 |     at async BookFinder.runSearch (/app/server/finders/BookFinder.js:586:15)
2025-12-23 00:13:55.587 |     at async BookFinder.search (/app/server/finders/BookFinder.js:397:13)
2025-12-23 00:13:55.587 |     at async Scanner.quickMatchLibraryItem (/app/server/scanner/Scanner.js:55:23)
2025-12-23 00:13:55.587 |     at async Scanner.matchLibraryItemsChunk (/app/server/scanner/Scanner.js:450:22) 
2025-12-23 00:13:55.587 | promise: Promise {
2025-12-23 00:13:55.587 |   <rejected> TypeError: Cannot read properties of null (reading 'length')
2025-12-23 00:13:55.587 |       at Audible.cleanResult (/app/server/providers/Audible.js:79:29)
2025-12-23 00:13:55.587 |       at /app/server/providers/Audible.js:170:53
2025-12-23 00:13:55.587 |       at Array.map (<anonymous>)
2025-12-23 00:13:55.587 |       at Audible.search (/app/server/providers/Audible.js:170:34)
2025-12-23 00:13:55.587 |       at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
2025-12-23 00:13:55.587 |       at async BookFinder.getAudibleResults (/app/server/finders/BookFinder.js:191:19)
2025-12-23 00:13:55.587 |       at async BookFinder.runSearch (/app/server/finders/BookFinder.js:586:15)
2025-12-23 00:13:55.587 |       at async BookFinder.search (/app/server/finders/BookFinder.js:397:13)
2025-12-23 00:13:55.587 |       at async Scanner.quickMatchLibraryItem (/app/server/scanner/Scanner.js:55:23)
2025-12-23 00:13:55.587 |       at async Scanner.matchLibraryItemsChunk (/app/server/scanner/Scanner.js:450:22)
2025-12-23 00:13:55.587 | }
2025-12-23 00:13:57.043 | Running in production mode.
2025-12-23 00:13:57.043 | Options: CONFIG_PATH=/config, METADATA_PATH=/metadata, PORT=80, HOST=undefined, SOURCE=docker, ROUTER_BASE_PATH=/audiobookshelf
2025-12-23 00:13:57.054 | [2025-12-23 02:13:57.053] INFO: === Starting Server ===
2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.054] INFO: [Server] Init v2.32.0
2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.055] INFO: [Server] Node.js Version: v20.19.6
2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.055] INFO: [Server] Platform: linux
2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.055] INFO: [Server] Arch: x64
2025-12-23 00:13:57.076 | [2025-12-23 02:13:57.076] INFO: [Database] Initializing db at "/config/absdatabase.sqlite"
2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.102] INFO: [Database] Loading extension /usr/local/lib/nusqlite3/libnusqlite3.so
2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.103] INFO: [Database] Successfully loaded extension /usr/local/lib/nusqlite3/libnusqlite3.so
2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.103] INFO: [Database] Db supports unaccent and unicode foldings
2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.103] INFO: [Database] Db connection was successful
2025-12-23 00:13:57.124 | [2025-12-23 02:13:57.123] INFO: [MigrationManager] Database is already up to date.
2025-12-23 00:13:57.461 | [2025-12-23 02:13:57.461] INFO: [Database] Db initialized with models: user, session, apiKey, library, libraryFolder, book, podcast, podcastEpisode, libraryItem, mediaProgress, series, bookSeries, author, bookAuthor, collection, collectionBook, playlist, playlistMediaItem, device, playbackSession, feed, feedEpisode, setting, customMetadataProvider, mediaItemShare
2025-12-23 00:14:02.767 | [2025-12-23 02:14:02.765] INFO: [Database] running ANALYZE
2025-12-23 00:14:04.619 | [2025-12-23 02:14:04.619] INFO: [Database] ANALYZE completed
2025-12-23 00:14:04.643 | [2025-12-23 02:14:04.643] INFO: [LogManager] Removed daily log: 2025-12-16.txt
2025-12-23 00:14:04.644 | [2025-12-23 02:14:04.644] INFO: [LogManager] Init current daily log filename: 2025-12-23.txt
2025-12-23 00:14:04.687 | [2025-12-23 02:14:04.687] INFO: [BackupManager] 0 Backups Found
2025-12-23 00:14:04.688 | [2025-12-23 02:14:04.687] INFO: [BackupManager] Auto Backups are disabled
2025-12-23 00:14:04.726 | [2025-12-23 02:14:04.726] INFO: [Watcher] Initializing watcher for "Audiobooks".
2025-12-23 00:14:04.734 | [2025-12-23 02:14:04.733] INFO: Listening on port :80
2025-12-23 00:14:09.461 | [2025-12-23 02:14:09.460] INFO: [SocketAuthority] Socket Connected to /audiobookshelf/socket.io HEQJI_-rz-hyiO3RAAAB
2025-12-23 00:17:34.567 | [2025-12-23 02:17:34.567] INFO: [Watcher] "Audiobooks" Ready

Additional Notes

No response

Originally created by @cosmo5001 on GitHub (Dec 23, 2025). ### What happened? My server crashed during a full library match with a null read error ### What did you expect to happen? successful match of the library ### Steps to reproduce the issue 1. Start a full library match with audible as the metadata provider 2. wait ### Audiobookshelf version 2.32.0 ### How are you running audiobookshelf? Docker ### What OS is your Audiobookshelf server hosted from? Windows ### If the issue is being seen in the UI, what browsers are you seeing the problem on? None ### Logs ```shell 2025-12-23 00:13:37.598 | [2025-12-23 02:13:37.598] INFO: [Audnexus] Searching for author "https://api.audnex.us/authors?name=the+true+story+of+china%27s+genocide+of+the+uyghurs" 2025-12-23 00:13:42.601 | [2025-12-23 02:13:42.600] ERROR: [Audnexus] Author ASIN request failed for stewart lang socket hang up 2025-12-23 00:13:50.184 | [2025-12-23 02:13:50.184] ERROR: [Audnexus] Author ASIN request failed for the true story of china's genocide of the uyghurs Request failed with status code 520 2025-12-23 00:13:50.224 | [2025-12-23 02:13:50.224] ERROR: [Audnexus] Author ASIN request failed for no escape Request failed with status code 521 2025-12-23 00:13:50.773 | [2025-12-23 02:13:50.773] WARN: [Scanner] matchLibraryItems: Match warning No audible match found for library item "No Escape - The True Story of China's Genocide of the Uyghurs" 2025-12-23 00:13:51.438 | [2025-12-23 02:13:51.437] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/Zombie Fallout/cover.jpg" from url "https://m.media-amazon.com/images/I/91DsYYvakEL.jpg" 2025-12-23 00:13:52.697 | [2025-12-23 02:13:52.696] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/The End Has Come and Gone/cover.jpg" from url "https://m.media-amazon.com/images/I/91+c2bNpzrL.jpg" 2025-12-23 00:13:54.012 | [2025-12-23 02:13:54.012] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/The End/cover.jpg" from url "https://m.media-amazon.com/images/I/91+c2bNpzrL.jpg" 2025-12-23 00:13:55.084 | [2025-12-23 02:13:55.083] INFO: [CoverManager] Downloaded libraryItem cover "/audiobooks/Authors/Tufo, Mark/The Book of Riley, A Zombie Tale/cover.jpg" from url "https://m.media-amazon.com/images/I/91Q-Qz5DMBL.jpg" 2025-12-23 00:13:55.587 | [2025-12-23 02:13:55.587] FATAL: [Server] Unhandled rejection: TypeError: Cannot read properties of null (reading 'length') 2025-12-23 00:13:55.587 | at Audible.cleanResult (/app/server/providers/Audible.js:79:29) 2025-12-23 00:13:55.587 | at /app/server/providers/Audible.js:170:53 2025-12-23 00:13:55.587 | at Array.map (<anonymous>) 2025-12-23 00:13:55.587 | at Audible.search (/app/server/providers/Audible.js:170:34) 2025-12-23 00:13:55.587 | at process.processTicksAndRejections (node:internal/process/task_queues:95:5) 2025-12-23 00:13:55.587 | at async BookFinder.getAudibleResults (/app/server/finders/BookFinder.js:191:19) 2025-12-23 00:13:55.587 | at async BookFinder.runSearch (/app/server/finders/BookFinder.js:586:15) 2025-12-23 00:13:55.587 | at async BookFinder.search (/app/server/finders/BookFinder.js:397:13) 2025-12-23 00:13:55.587 | at async Scanner.quickMatchLibraryItem (/app/server/scanner/Scanner.js:55:23) 2025-12-23 00:13:55.587 | at async Scanner.matchLibraryItemsChunk (/app/server/scanner/Scanner.js:450:22) 2025-12-23 00:13:55.587 | promise: Promise { 2025-12-23 00:13:55.587 | <rejected> TypeError: Cannot read properties of null (reading 'length') 2025-12-23 00:13:55.587 | at Audible.cleanResult (/app/server/providers/Audible.js:79:29) 2025-12-23 00:13:55.587 | at /app/server/providers/Audible.js:170:53 2025-12-23 00:13:55.587 | at Array.map (<anonymous>) 2025-12-23 00:13:55.587 | at Audible.search (/app/server/providers/Audible.js:170:34) 2025-12-23 00:13:55.587 | at process.processTicksAndRejections (node:internal/process/task_queues:95:5) 2025-12-23 00:13:55.587 | at async BookFinder.getAudibleResults (/app/server/finders/BookFinder.js:191:19) 2025-12-23 00:13:55.587 | at async BookFinder.runSearch (/app/server/finders/BookFinder.js:586:15) 2025-12-23 00:13:55.587 | at async BookFinder.search (/app/server/finders/BookFinder.js:397:13) 2025-12-23 00:13:55.587 | at async Scanner.quickMatchLibraryItem (/app/server/scanner/Scanner.js:55:23) 2025-12-23 00:13:55.587 | at async Scanner.matchLibraryItemsChunk (/app/server/scanner/Scanner.js:450:22) 2025-12-23 00:13:55.587 | } 2025-12-23 00:13:57.043 | Running in production mode. 2025-12-23 00:13:57.043 | Options: CONFIG_PATH=/config, METADATA_PATH=/metadata, PORT=80, HOST=undefined, SOURCE=docker, ROUTER_BASE_PATH=/audiobookshelf 2025-12-23 00:13:57.054 | [2025-12-23 02:13:57.053] INFO: === Starting Server === 2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.054] INFO: [Server] Init v2.32.0 2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.055] INFO: [Server] Node.js Version: v20.19.6 2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.055] INFO: [Server] Platform: linux 2025-12-23 00:13:57.055 | [2025-12-23 02:13:57.055] INFO: [Server] Arch: x64 2025-12-23 00:13:57.076 | [2025-12-23 02:13:57.076] INFO: [Database] Initializing db at "/config/absdatabase.sqlite" 2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.102] INFO: [Database] Loading extension /usr/local/lib/nusqlite3/libnusqlite3.so 2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.103] INFO: [Database] Successfully loaded extension /usr/local/lib/nusqlite3/libnusqlite3.so 2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.103] INFO: [Database] Db supports unaccent and unicode foldings 2025-12-23 00:13:57.103 | [2025-12-23 02:13:57.103] INFO: [Database] Db connection was successful 2025-12-23 00:13:57.124 | [2025-12-23 02:13:57.123] INFO: [MigrationManager] Database is already up to date. 2025-12-23 00:13:57.461 | [2025-12-23 02:13:57.461] INFO: [Database] Db initialized with models: user, session, apiKey, library, libraryFolder, book, podcast, podcastEpisode, libraryItem, mediaProgress, series, bookSeries, author, bookAuthor, collection, collectionBook, playlist, playlistMediaItem, device, playbackSession, feed, feedEpisode, setting, customMetadataProvider, mediaItemShare 2025-12-23 00:14:02.767 | [2025-12-23 02:14:02.765] INFO: [Database] running ANALYZE 2025-12-23 00:14:04.619 | [2025-12-23 02:14:04.619] INFO: [Database] ANALYZE completed 2025-12-23 00:14:04.643 | [2025-12-23 02:14:04.643] INFO: [LogManager] Removed daily log: 2025-12-16.txt 2025-12-23 00:14:04.644 | [2025-12-23 02:14:04.644] INFO: [LogManager] Init current daily log filename: 2025-12-23.txt 2025-12-23 00:14:04.687 | [2025-12-23 02:14:04.687] INFO: [BackupManager] 0 Backups Found 2025-12-23 00:14:04.688 | [2025-12-23 02:14:04.687] INFO: [BackupManager] Auto Backups are disabled 2025-12-23 00:14:04.726 | [2025-12-23 02:14:04.726] INFO: [Watcher] Initializing watcher for "Audiobooks". 2025-12-23 00:14:04.734 | [2025-12-23 02:14:04.733] INFO: Listening on port :80 2025-12-23 00:14:09.461 | [2025-12-23 02:14:09.460] INFO: [SocketAuthority] Socket Connected to /audiobookshelf/socket.io HEQJI_-rz-hyiO3RAAAB 2025-12-23 00:17:34.567 | [2025-12-23 02:17:34.567] INFO: [Watcher] "Audiobooks" Ready ``` ### Additional Notes _No response_
adam added the bug label 2026-04-25 00:14:00 +02:00
adam closed this issue 2026-04-25 00:14:00 +02:00
Author
Owner

@github-actions[bot] commented on GitHub (Dec 24, 2025):

Fixed in v2.32.1.

@github-actions[bot] commented on GitHub (Dec 24, 2025): Fixed in [v2.32.1](https://github.com/advplyr/audiobookshelf/releases/tag/v2.32.1).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#3160