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

[beta]: Fix timeouts firing with tarball extraction #6272

Merged
merged 3 commits into from
Nov 6, 2018

Conversation

alexcrichton
Copy link
Member

This is a backport of #6130 to the 1.31.0 branch

This is what curl recommends we use so let's be sure to not mess up any
timers by accident!
Prevoiusly retries were tracked per-session, which meant that if you
were downloading 100 packages and they all failed spuriously for the
same reason you'd immediately abort. Instead though let's keep track of
retries per package so if they're all coupled on one connection a
failure of one will end up retrying all of them. We want to make sure
that we actually retry again!
This commit fixes rust-lang#6125 by ensuring that while we're extracting tarballs
or doing other synchronous work like grabbing file locks we're not
letting the timeout timers of each HTTP transfer keep ticking. This is
curl's default behavior (which we don't want in this scenario). Instead
the timeout logic is inlined directly and we manually account for the
synchronous work happening not counting towards timeout limits.

Closes rust-lang#6125
@alexcrichton
Copy link
Member Author

r? @ehuss

@ehuss
Copy link
Contributor

ehuss commented Nov 6, 2018

@bors r+

@bors
Copy link
Contributor

bors commented Nov 6, 2018

📌 Commit bfeafde has been approved by ehuss

bors added a commit that referenced this pull request Nov 6, 2018
[beta]: Fix timeouts firing with tarball extraction

This is a backport of #6130 to the 1.31.0 branch
@bors
Copy link
Contributor

bors commented Nov 6, 2018

⌛ Testing commit bfeafde with merge 2c011df...

@bors
Copy link
Contributor

bors commented Nov 6, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: ehuss
Pushing 2c011df to rust-1.31.0...

@bors bors merged commit bfeafde into rust-lang:rust-1.31.0 Nov 6, 2018
@ehuss ehuss added this to the 1.31.0 milestone Feb 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants