[Bug]: Podcast playlists crashes the server, is unavailable in v2.17.7 #2455

Closed
opened 2026-04-25 00:07:22 +02:00 by adam · 8 comments
Owner

Originally created by @projector22 on GitHub (Jan 3, 2025).

What happened?

After update, ABS server crashes when accessing Podcast playlists. Pinning the container back to 2.17.6 restores the functionality

What did you expect to happen?

The playlist interface to load and my playlists accessible

Steps to reproduce the issue

  1. Update to 2.17.7
  2. Login and open your podcast library
  3. Click (or tap, same happened on mobile) on the "Playlists" item.

Audiobookshelf version

v2.17.7

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?

None

Logs

audiobookshelf_1  | [2025-01-03 07:58:51.753] FATAL: [Server] Unhandled rejection: TypeError: Cannot read properties of null (reading 'podcast')
audiobookshelf_1  |     at /server/models/Playlist.js:320:41
audiobookshelf_1  |     at Array.map (<anonymous>)
audiobookshelf_1  |     at Playlist.toOldJSONExpanded (/server/models/Playlist.js:309:42)
audiobookshelf_1  |     at /server/models/Playlist.js:86:57
audiobookshelf_1  |     at Array.map (<anonymous>)
audiobookshelf_1  |     at playlist.getOldPlaylistsForUserAndLibrary (/server/models/Playlist.js:86:30)
audiobookshelf_1  |     at async ApiRouter.getUserPlaylistsForLibrary (/server/controllers/LibraryController.js:818:28)
audiobookshelf_1  | promise: Promise {
audiobookshelf_1  |   <rejected> TypeError: Cannot read properties of null (reading 'podcast')
audiobookshelf_1  |       at /server/models/Playlist.js:320:41
audiobookshelf_1  |       at Array.map (<anonymous>)
audiobookshelf_1  |       at Playlist.toOldJSONExpanded (/server/models/Playlist.js:309:42)
audiobookshelf_1  |       at /server/models/Playlist.js:86:57
audiobookshelf_1  |       at Array.map (<anonymous>)
audiobookshelf_1  |       at playlist.getOldPlaylistsForUserAndLibrary (/server/models/Playlist.js:86:30)
audiobookshelf_1  |       at async ApiRouter.getUserPlaylistsForLibrary (/server/controllers/LibraryController.js:818:28)
audiobookshelf_1  | }
audiobookshelf_1  | Config /config /metadata
audiobookshelf_1  | [2025-01-03 07:58:54.556] INFO: === Starting Server ===
audiobookshelf_1  | [2025-01-03 07:58:54.560] INFO: [Server] Init v2.17.7
audiobookshelf_1  | [2025-01-03 07:58:54.561] INFO: [Server] Node.js Version: v20.18.1

Additional Notes

No response

Originally created by @projector22 on GitHub (Jan 3, 2025). ### What happened? After update, ABS server crashes when accessing Podcast playlists. Pinning the container back to 2.17.6 restores the functionality ### What did you expect to happen? The playlist interface to load and my playlists accessible ### Steps to reproduce the issue 1. Update to 2.17.7 2. Login and open your podcast library 3. Click (or tap, same happened on mobile) on the "Playlists" item. ### Audiobookshelf version v2.17.7 ### 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? None ### Logs ```shell audiobookshelf_1 | [2025-01-03 07:58:51.753] FATAL: [Server] Unhandled rejection: TypeError: Cannot read properties of null (reading 'podcast') audiobookshelf_1 | at /server/models/Playlist.js:320:41 audiobookshelf_1 | at Array.map (<anonymous>) audiobookshelf_1 | at Playlist.toOldJSONExpanded (/server/models/Playlist.js:309:42) audiobookshelf_1 | at /server/models/Playlist.js:86:57 audiobookshelf_1 | at Array.map (<anonymous>) audiobookshelf_1 | at playlist.getOldPlaylistsForUserAndLibrary (/server/models/Playlist.js:86:30) audiobookshelf_1 | at async ApiRouter.getUserPlaylistsForLibrary (/server/controllers/LibraryController.js:818:28) audiobookshelf_1 | promise: Promise { audiobookshelf_1 | <rejected> TypeError: Cannot read properties of null (reading 'podcast') audiobookshelf_1 | at /server/models/Playlist.js:320:41 audiobookshelf_1 | at Array.map (<anonymous>) audiobookshelf_1 | at Playlist.toOldJSONExpanded (/server/models/Playlist.js:309:42) audiobookshelf_1 | at /server/models/Playlist.js:86:57 audiobookshelf_1 | at Array.map (<anonymous>) audiobookshelf_1 | at playlist.getOldPlaylistsForUserAndLibrary (/server/models/Playlist.js:86:30) audiobookshelf_1 | at async ApiRouter.getUserPlaylistsForLibrary (/server/controllers/LibraryController.js:818:28) audiobookshelf_1 | } audiobookshelf_1 | Config /config /metadata audiobookshelf_1 | [2025-01-03 07:58:54.556] INFO: === Starting Server === audiobookshelf_1 | [2025-01-03 07:58:54.560] INFO: [Server] Init v2.17.7 audiobookshelf_1 | [2025-01-03 07:58:54.561] INFO: [Server] Node.js Version: v20.18.1 ``` ### Additional Notes _No response_
adam added the bug label 2026-04-25 00:07:22 +02:00
adam closed this issue 2026-04-25 00:07:22 +02:00
Author
Owner

@oinska commented on GitHub (Jan 3, 2025):

What happened?
Same problem found. Fixed with downgrade to version 2.17.6.

What did you expect to happen?
Idem
Error message: red "Websocket" in ABS GUI.

Steps to reproduce the issue
Idem

Audiobookshelf version
v2.17.7

How are you running audiobookshelf?
deb https://advplyr.github.io/audiobookshelf-ppa

What OS is your Audiobookshelf server hosted from?
Linux Debian 12 Bookworm

If the issue is being seen in the UI, what browsers are you seeing the problem on?
128Firefox .5.0esr (64 bits) and Android client Audiobookshelf 0.9.77-beta

@oinska commented on GitHub (Jan 3, 2025): **What happened?** Same problem found. Fixed with downgrade to version 2.17.6. **What did you expect to happen?** Idem Error message: red "Websocket" in ABS GUI. **Steps to reproduce the issue** Idem **Audiobookshelf version** v2.17.7 **How are you running audiobookshelf?** deb https://advplyr.github.io/audiobookshelf-ppa **What OS is your Audiobookshelf server hosted from?** Linux Debian 12 Bookworm **If the issue is being seen in the UI, what browsers are you seeing the problem on?** 128Firefox .5.0esr (64 bits) and Android client Audiobookshelf 0.9.77-beta
Author
Owner

@advplyr commented on GitHub (Jan 3, 2025):

Is it possible that the playlist contains a podcast episode that was removed from the podcast?

@advplyr commented on GitHub (Jan 3, 2025): Is it possible that the playlist contains a podcast episode that was removed from the podcast?
Author
Owner

@oinska commented on GitHub (Jan 3, 2025):

Thaks for your reply!
Not in my case.
With downgrade to version 2.17.6, all playlists have reappeared. Some are empty, others are not.

@oinska commented on GitHub (Jan 3, 2025): Thaks for your reply! Not in my case. With downgrade to version 2.17.6, all playlists have reappeared. Some are empty, others are not.
Author
Owner

@projector22 commented on GitHub (Jan 3, 2025):

Is it possible that the playlist contains a podcast episode that was removed from the podcast?

Unlikely in my case also - my playlists are recreated nightly

@projector22 commented on GitHub (Jan 3, 2025): > Is it possible that the playlist contains a podcast episode that was removed from the podcast? Unlikely in my case also - my playlists are recreated nightly
Author
Owner

@oinska commented on GitHub (Jan 4, 2025):

Does this mean that the bug is fixed and that I can apply the update?

(I think this is the first time I've reported a bug, so I'm not used to it).

@oinska commented on GitHub (Jan 4, 2025): Does this mean that the bug is fixed and that I can apply the update? (I think this is the first time I've reported a bug, so I'm not used to it).
Author
Owner

@nichwall commented on GitHub (Jan 4, 2025):

The Docker edge image gives you access to the latest commit on GitHub (it's usually available about 15-20 minutes after a commit). You can use this "beta version" to help test fixes and new features before a release. You will need to re pull the image if you are wanting to test a newer edge version.

The fix is not currently available in the latest tag, because that is the latest release (since it is still awaiting release at the time of writing this).

@nichwall commented on GitHub (Jan 4, 2025): The Docker `edge` image gives you access to the latest commit on GitHub (it's usually available about 15-20 minutes after a commit). You can use this "beta version" to help test fixes and new features before a release. You will need to re pull the image if you are wanting to test a newer edge version. The fix is not currently available in the `latest` tag, because that is the latest release (since it is still awaiting release at the time of writing this).
Author
Owner

@github-actions[bot] commented on GitHub (Jan 20, 2025):

Fixed in v2.18.0.

@github-actions[bot] commented on GitHub (Jan 20, 2025): Fixed in [v2.18.0](https://github.com/advplyr/audiobookshelf/releases/tag/v2.18.0).
Author
Owner

@oinska commented on GitHub (Jan 23, 2025):

Thank you very much! All works!

@oinska commented on GitHub (Jan 23, 2025): Thank you very much! All works!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#2455