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

Download patch prompt operation timed out #1426

Closed
josercc opened this issue Oct 24, 2023 · 6 comments
Closed

Download patch prompt operation timed out #1426

josercc opened this issue Oct 24, 2023 · 6 comments
Labels
bug Something isn't working

Comments

@josercc
Copy link

josercc commented Oct 24, 2023

Description

I know that Shorebird’s patch service is currently stored on Google Cloud and is inaccessible to networks in China. Currently, I have turned on the VPN through the Potatso software in the App and can browse Google services normally. When I run the phone through Shorebird preview ios-alpha and download the latest patch through the shorebird_code_push plug-in, the following message is prompted.

[00:04:51.960] (16ccdb000) INFO   Sending patch check request: PatchCheckRequest { app_id: "ae93cf08-88ee-49d9-9fb0-66ab75091158", channel: "stable", release_version: "1.0.0+1697186586", patch_number: None, platform: "ios", arch: "aarch64" }
[00:05:23.119] (16ccdb000) ERROR  Error downloading update: error decoding response body: operation timed out
Caused by:
    operation timed out

Steps To Reproduce

1 shorebird preview ios-alpha
2 open Potatso app open vpn
3 open app download patch
4 download error

Expected Behavior
download patch success

@josercc josercc added the bug Something isn't working label Oct 24, 2023
@eseidel
Copy link
Contributor

eseidel commented Oct 25, 2023

Currently shorebird uses Rust's http implementation to fetch the patches. It's possible that it's not respecting the VPN on the phone?

That message comes from:
https://github.com/shorebirdtech/updater/blob/main/library/src/network.rs#L103
I believe.

It would be possible for us to use the system provided http implementation, but that would still require all users to have a VPN installed if Google Cloud is not accessible from your region.
https://docs.shorebird.dev/faq#can-i-use-shorebird-in-my-country

@josercc
Copy link
Author

josercc commented Oct 27, 2023

Currently shorebird uses Rust's http implementation to fetch the patches. It's possible that it's not respecting the VPN on the phone?

That message comes from: https://github.com/shorebirdtech/updater/blob/main/library/src/network.rs#L103 I believe.

It would be possible for us to use the system provided http implementation, but that would still require all users to have a VPN installed if Google Cloud is not accessible from your region. https://docs.shorebird.dev/faq#can-i-use-shorebird-in-my-country

After testing, my phone can access your path after turning on the VPN.

@eseidel
Copy link
Contributor

eseidel commented Oct 27, 2023

We also just moved to use a CDN (still Google Cloud) rather than Google Storage, which may improve access in some regions: #1423

@josercc
Copy link
Author

josercc commented Nov 7, 2023

Yes, it is OK after using the CDN at present, but the download has no progress. For our current patch 30M, the experience is really poor.

@eseidel
Copy link
Contributor

eseidel commented Nov 7, 2023

Yeah, we have no ability to resume patches yet, so if they time out, they restart from zero. shorebirdtech/updater#104. (Which is bad for everyone, including us.)

Our patches are also too large. Our Android ones can get down to bytes for small changes, but for large changes can grow (too) quickly. Our iOS ones are also just huge. All of this we intend to fix after we release iOS support: #675

@eseidel
Copy link
Contributor

eseidel commented Nov 27, 2023

I'm going to close this in favor of shorebirdtech/updater#104 assuming that's what you're asking for? Let me know if not. Thanks!

@eseidel eseidel closed this as completed Nov 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
No open projects
Status: Done
Development

No branches or pull requests

2 participants