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

Retry incomplete (failed) downloads automatically #1250

Closed
m0ls opened this issue Oct 7, 2015 · 17 comments · Fixed by #6420
Closed

Retry incomplete (failed) downloads automatically #1250

m0ls opened this issue Oct 7, 2015 · 17 comments · Fixed by #6420

Comments

@m0ls
Copy link

m0ls commented Oct 7, 2015

IO Error: Download completed but size: 15988804 does not equal expected size 75595064

@mfietz
Copy link
Contributor

mfietz commented Oct 7, 2015

Yeah, that is too little information.
I cannot do anything with that.

@TomHennen
Copy link
Contributor

@STTan, what episode of what podcast were you trying to download? Does this
happen every time? Does it only happen with one podcast or all of them?

On Wed, Oct 7, 2015, 10:43 AM Martin Fietz notifications@github.com wrote:

Yeah, that is too little information.
I cannot do anything with that.


Reply to this email directly or view it on GitHub
#1250 (comment)
.

@m0ls
Copy link
Author

m0ls commented Oct 11, 2015

@TomHennen @mfietz

It happens not every time, but frequently.


Episodes above are listed here:

https://ipn.li/itgonglun/feed


https://ipn.li/taiyilaile/feed


https://ipn.li/kernelpanic/feed


I don't know if it's my network problem because I'm using a system-wide proxy to forward any traffic between me and non-China IPs to my own proxy server.

@m0ls
Copy link
Author

m0ls commented Oct 11, 2015

Another test.

@mfietz
Copy link
Contributor

mfietz commented Oct 11, 2015

As far as I can tell, we cannot really distinguish between an actual complete download and when the connection is lost for whatever reason.
The error message just notes that the (expected) file size according to the server is much higher than the amount of bytes you actually received.

We don't have an automatic retry mechanism for failed downloads yet, which would also be really hard to implement and might lead to unexpected behavior.

I don't think the downloaded partial file is deleted, hitting the retry button should resume where the download left off.

As this seems to happen with different servers, the problem is probably at your end. If you have access to them, you should probably check your proxies logs or google if someone else has similar issues with the same software.

@mfietz
Copy link
Contributor

mfietz commented Jan 17, 2016

@TomHennen not sure what to do about this. Should be regard this as a FR to implement retrying/resuming a failed download? Better description ("Unexpected size" = "Download failed")

@TomHennen
Copy link
Contributor

I think that's right. Treat these as failed downloads and then let them get
retried? Unless we need to worry about servers that lie about the size.

On Sun, Jan 17, 2016, 5:41 AM Martin Fietz notifications@github.com wrote:

@TomHennen https://github.com/TomHennen not sure what to do about this.
Should be regard this as a FR to implement retrying/resuming a failed
download? Better description ("Unexpected size" = "Download failed")


Reply to this email directly or view it on GitHub
#1250 (comment)
.

@orionlee
Copy link
Contributor

It happens to me from time to time as well, especially on wifi network connections that are not so stable (1-2 bars).

What's more, limiting parallel downloads seems to reduce the likelihood of the error appearing: I reduced the parallel downloads from 4 to 2, the error seems to not appear (at least not as frequently).

@melissaboiko
Copy link

I live in place with bad/intermittent Internet connection, and the lack of automatic resuming makes AntennaPod really hard to use. Thank you for your work!

@orionlee
Copy link
Contributor

The pending PR #2714 coincidentally addresses many cases here. See #2714 (comment)

@keunes
Copy link
Member

keunes commented Sep 5, 2019

As per #3381: it could be interesting to introduce an (advanced) setting to set the (max) number of retries that instructs antennapod how many times failed donloads should be reinitiated.

@ByteHamster ByteHamster changed the title Resume incomplete (failed) download Retry incomplete (failed) downloads automatically May 21, 2020
@debuglevel
Copy link

Would really be nice to see this implemented. I'm also often on a instable Wifi and have to restart downloads a few times until they are complete. Spotify seems to manage this in the background.

@antennapod-bot
Copy link

This issue has been mentioned on AntennaPod Forum. There might be relevant details there:

https://forum.antennapod.org/t/how-to-get-rid-of-the-red-exclamation-mark-last-update-failed-warnings/1080/12

@bmaupin
Copy link

bmaupin commented Oct 5, 2021

I would love to see this. Most other podcasting apps I've used will not only retry downloads that failed, they also allow scheduling a download (which might be a positive side effect of this, depending how it's implemented). So, for example, if the phone has no internet, you can tap to download an episode, and the download will start the next time the phone has internet.

In addition, it would be nice not to have a noisy notification/toast if a download fails. Just show some subtle indicator in the app that it isn't downloaded and try again the next time the phone is connected to the internet. This is often indicated in other apps by an icon showing the rough percentage (a progress circle, for example) of the episode that's been downloaded.

It seems like I've seen other error notifications too (perhaps when refreshing a podcast when there's no/spotty internet? I don't recall off the top of my head). Instead of showing an error, it would be nice if it just tried again when the device has internet connectivity.

Thanks!

@debuglevel
Copy link

Haha, yes +1. I don't need a remainder that my Wifi sucks. :D

@antennapod-bot
Copy link

This issue has been mentioned on AntennaPod Forum. There might be relevant details there:

https://forum.antennapod.org/t/download-setting-to-automatically-retry-download/2066/2

@maltfield
Copy link

maltfield commented Aug 1, 2022

+1 for just-fucking-retry-it-forever-until-it-downloads-successfully

The title of this ticket doesn't seem to ask for what I want, but another issue said that this issue is tracking a new feature to automatically retry downloading podcasts after failure.

Background Context

I don't have a SIM card, and I live in a city where wifi is abundant, yet spotty.

As I walk around the city on any given day, my Android phone will sit in my pocket and scan for wifi connections. Usually, when I do check my phone at some point after walking around, I notice that I have a bunch of unread messages on WhatsApp. That's because WhatsApp detected that I had internet and automatically downloaded all my messages during the brief ~60 seconds during which I was walking past a wifi hotspot. This is great!

Moreover, once I notice the messages, I can proceed to write back replies, even if I don't have Internet at this time. In WhatsApp, this works fine. Whatsapp will just queue up the messages for sending. The next time I walk by a wifi hotspot, it will blast all my previously-failed-to-send messages out to the Internet. This is great UX!

Expected Behaviour

A lot of the grocery stores that I shop at have free wifi. As you walk around the store, the wiif quality varies from 5% packet loss to 100% packet loss. Even though the Internet is shitty, AntennaPod should be capable of gracefully handling downloads on such connections in the background without any user interaction whatsoever.

I expect to be able to walk into a grocery store that has free wifi with my phone in my pocket, do my shopping, and walk out with new podcasts downloaded. I should not have to take my phone out of my pocket for this to happen

I realize that achieving this is non-trivial, but it absolutely can be done. My Android phone will automatically connect to the wifi network. AntennaPod should be able to get notified about the change of network status and immediately begin attempting to download podcasts in the background. As I move to the back of the store to buy almond milk (and packet loss rises from 5% to 100%), AntennaPod should handle this. As I move back to the front of the store to the cash register (and packet loss drops from 100% to 5%), AntennaPod should automatically retry the downloads, picking-up where they were left-off.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants