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

Removed force_close from all downloaders #4453

Merged
merged 1 commit into from
Sep 26, 2023

Conversation

mdellweg
Copy link
Member

This flag causes large syncs to fail under certain circumstances, because the port range is used up too fast and reusing ports in time_wait is not appreciated by servers.

We cannot possibly fix all broken http servers in the wild.

fixes #4452

This flag causes large syncs to fail under certain circumstances,
because the port range is used up too fast and reusing ports in
time_wait is not appreciated by servers.

We cannot possibly fix all broken http servers in the wild.

fixes pulp#4452
@mdellweg mdellweg marked this pull request as ready for review September 26, 2023 09:45
Copy link
Member

@bmbouter bmbouter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should try this and see if there are regressions reported by users. It's hard to know what will happen because this fix was introduced to workaround real webservers in the wild, so our automated tests won't help us. Still though, let's try it.

Also FYI, the original issue we worked around was a checksum mismatch bug, so if we start getting those reported we should know this removal could be related.

@mdellweg ty for making this.

@bmbouter
Copy link
Member

@dralley I think you're an expert in our downloaders, wdyt about being second reviewer?

Copy link
Contributor

@dralley dralley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm also +1 on this, my only question (and I'm not strongly in favor of requiring this) is whether we ought to stick it behind an off-by-default feature flag just in case.

But either way we could undo the change fairly easily and quickly if we start encountering such issues again. As long as we recognize them as such.

Note that since we generally call remote.get_downloader() I believe we still end up with a new downloader on every request anyway? And, thus, probably a new session? https://github.com/pulp/pulpcore/blob/main/pulpcore/app/models/repository.py#L507

@mdellweg mdellweg merged commit cbf160d into pulp:main Sep 26, 2023
14 checks passed
@mdellweg mdellweg deleted the 4452_keep_alive branch September 26, 2023 17:37
@mdellweg
Copy link
Member Author

We'll add the feature flag if it is still encountered as an issue.

@mdellweg
Copy link
Member Author

Backporting as requested in AAH-2857

Copy link

patchback bot commented Nov 29, 2023

Backport to 3.18: 💚 backport PR created

✅ Backport PR branch: patchback/backports/3.18/cbf160deb52b5a623d52131b0ed4a967da7c0800/pr-4453

Backported as #4794

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

Copy link

patchback bot commented Nov 29, 2023

Backport to 3.21: 💚 backport PR created

✅ Backport PR branch: patchback/backports/3.21/cbf160deb52b5a623d52131b0ed4a967da7c0800/pr-4453

Backported as #4793

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

Copy link

patchback bot commented Nov 29, 2023

Backport to 3.22: 💚 backport PR created

✅ Backport PR branch: patchback/backports/3.22/cbf160deb52b5a623d52131b0ed4a967da7c0800/pr-4453

Backported as #4796

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

Copy link

patchback bot commented Nov 29, 2023

Backport to 3.23: 💚 backport PR created

✅ Backport PR branch: patchback/backports/3.23/cbf160deb52b5a623d52131b0ed4a967da7c0800/pr-4453

Backported as #4798

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

Copy link

patchback bot commented Nov 29, 2023

Backport to 3.39: 💚 backport PR created

✅ Backport PR branch: patchback/backports/3.39/cbf160deb52b5a623d52131b0ed4a967da7c0800/pr-4453

Backported as #4797

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

Copy link

patchback bot commented Nov 29, 2023

Backport to 3.41: 💚 backport PR created

✅ Backport PR branch: patchback/backports/3.41/cbf160deb52b5a623d52131b0ed4a967da7c0800/pr-4453

Backported as #4795

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

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

Successfully merging this pull request may close these issues.

Pulpcore prevents the use of keep-alive and may exhaust port numbers in large syncs
3 participants