Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Podcasts downloading multiple files #3718

Open
marsbars-marsbars opened this issue Dec 14, 2024 · 4 comments
Open

[Bug]: Podcasts downloading multiple files #3718

marsbars-marsbars opened this issue Dec 14, 2024 · 4 comments
Labels
bug Something isn't working unable to reproduce Issue is not yet reproducible waiting Waiting for OP

Comments

@marsbars-marsbars
Copy link

What happened?

When manually getting new episodes to download, its almost as audio bookshelf does not recognize there already is a file / episode and it downloads again with a rather long random string to the filename, in some cases.
Screenshot 2024-12-14 at 11 08 14 AM

What did you expect to happen?

To recognize existing episodes and now re-download. (image shows another instance of multiple files )
Screenshot 2024-12-14 at 11 10 02 AM

Steps to reproduce the issue

  1. Edit Podcast
  2. Go to Episodes.
  3. Change date back to ~ couple years to decades.
  4. Set limit to anything from 3 - 3,000
  5. Click the check new downloads

Audiobookshelf version

v2.17.5

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

{"timestamp":"2024-12-14 17:15:27.717","source":"LibraryItem.js:398","message":"[LibraryItem] Library item \"bfb226be-9484-4254-8572-91b76a53cd21\" updated","levelName":"INFO","level":2}
{"timestamp":"2024-12-14 17:15:27.726","source":"PodcastManager.js:136","message":"[PodcastManager] Successfully downloaded podcast episode \"2017-02-12-conspiracy-podcast-part1\"","levelName":"INFO","level":2}
{"timestamp":"2024-12-14 17:15:37.676","source":"LibraryItem.js:398","message":"[LibraryItem] Library item \"bfb226be-9484-4254-8572-91b76a53cd21\" updated","levelName":"INFO","level":2}
{"timestamp":"2024-12-14 17:15:37.687","source":"PodcastManager.js:136","message":"[PodcastManager] Successfully downloaded podcast episode \"2017-02-05-conspiracy-podcast\"","levelName":"INFO","level":2}
{"timestamp":"2024-12-14 17:15:47.691","source":"LibraryItem.js:398","message":"[LibraryItem] Library item \"bfb226be-9484-4254-8572-91b76a53cd21\" updated","levelName":"INFO","level":2}
{"timestamp":"2024-12-14 17:15:47.702","source":"PodcastManager.js:136","message":"[PodcastManager] Successfully downloaded podcast episode \"2017-01-29-conspiracy-podcast-part1\"","levelName":"INFO","level":2}

Additional Notes

Running on Synology NAS in Docker w/ most recent DSM

@marsbars-marsbars marsbars-marsbars added the bug Something isn't working label Dec 14, 2024
@nichwall
Copy link
Contributor

nichwall commented Dec 14, 2024

To clarify, is the auto download schedule triggering again before finishing downloading episodes? That could happen depending on how often you are checking for downloads, how many are downloaded per check, and your download speed.

Related to #2672

@marsbars-marsbars
Copy link
Author

marsbars-marsbars commented Dec 14, 2024

No. I dont have auto download enabled, I just go and request past episodes and this is the result.

I've selected various ranges, from 3 to 3000; same results.

@advplyr
Copy link
Owner

advplyr commented Dec 14, 2024

I'm not able to reproduce this. The way that the check for episodes works is it runs a function that filters out any episodes that you already have.

It primarily uses the guid which is set in the RSS feed for every episode. It falls back on using the enclosure url which is the url to the audio file in the RSS feed.

Those values are only set if the episode is downloaded using Abs. They are not set if the episodes are scanned in from your file system. I suspect something is going on with your setup where the episodes are being scanned in from the file system.

checkHasEpisodeByFeedEpisode(feedEpisode) {
const guid = feedEpisode.guid
const url = feedEpisode.enclosure.url
return this.episodes.some((ep) => (ep.guid && ep.guid === guid) || ep.checkEqualsEnclosureUrl(url))
}

The easiest way to check if Abs has linked the podcast episode with an episode in the RSS feed is to use the search button on the podcast page.
image

When the episode is linked to the RSS feed you will see a green checkmark. If it is not linked (or just not downloaded) it will be a checkbox.
image

There is functionality built into Abs to match episodes with an episode in the RSS feed. To match them one-by-one you can press the edit button on any episode and use the "Match" tab.
To match all of the episodes in bulk you can use the quick match all episodes.
image

@advplyr advplyr added waiting Waiting for OP unable to reproduce Issue is not yet reproducible labels Dec 14, 2024
@marsbars-marsbars
Copy link
Author

Interesting, some of those files/series might have come from a copy of other downloads because I frequently received socket errors. I'll re-test with deleting a few series and then downloading only ABS and seeing how it behaves. Thank you !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working unable to reproduce Issue is not yet reproducible waiting Waiting for OP
Projects
None yet
Development

No branches or pull requests

3 participants