-
Notifications
You must be signed in to change notification settings - Fork 123
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
Use retain_package_versions to filter out older pkgs at sync time #2547
Conversation
0679f60
to
0bbf62f
Compare
Successful proof of concept, tests using RHEL 7 repo: immediate, no package limitSync time: I ran out of disk space and the whole thing failed (at least I think that was what happened, the DB started refusing to execute heartbeat writes), but it took about an hour to get ~80% finished Package data downloaded: 60 Gb (measured separately) immediate, package limit = 1Sync time: 570 seconds (9m30s) Package data downloaded: 4.9 Gb on_demand, package limit = 1Sync time reduced from 460 -> 203 seconds (7m40s -> 3m3s) One thing I (re) discovered is that the EVRs need to be grouped by arch, which makes my calculation in the initial post wrong. Instead of ~4200 packages vs. 32,000 it's ~5500 packages vs 32,000. Didn't change the situation too much though. |
bd5843f
to
7ae000a
Compare
@@ -0,0 +1,243 @@ | |||
# Sourced from https://github.com/nexB/univers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Vendor, or pull the whole huge package? It supports version comparisons for a dozen different package types (arch, debian, python, ruby, go, etc.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My take would be to just take the code in-line, rather than dragging a huge surface into pulp_rpm most of which we do not need.
17b2bab
to
47fa6c2
Compare
So the new test I wrote actually passes despite failing on CI, but the unfortunate reason is that the packages used in our fixtures are the same packages, so if the non-modular fixture gets synced first Pulp sets |
The first commit and second commit use two different strategies if you want to compare. The second is simpler and probably safer. |
066c25b
to
a65e277
Compare
1e73e66
to
eeb49ae
Compare
pulp_rpm/app/tasks/synchronizing.py
Outdated
|
||
# TODO: should this reflect the actual # of packages or just the # synced? | ||
# Do we need a new progress bar? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need feedback on this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think just synced otherwise it can bring questions "why the counter is at 95/100 packages"
503a915
to
c3e6bf8
Compare
I deleted the previous coment about TODOs, because one was addressed and the other I realized that if it is a problem, it's a problem we would already have, not a new one. I will file it as a new task to investigate that. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You'll probably want to rebase once you merge the #2611
I gave it a look and changes seem to be fine.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Def a significant improvement. Between the experimentation you did initially, the test modifications, and going thru the code-logic in my head a few times, it looks like it gives us what we (and our users) are looking for. lg2m!
Backport to 3.17: 💔 cherry-picking failed — conflicts found❌ Failed to cleanly apply 788687f on top of patchback/backports/3.17/788687f1fe1f9d443f3edd855070fde5c9caaceb/pr-2547 Backporting merged PR #2547 into main
🤖 @patchback |
Backport to 3.14: 💔 cherry-picking failed — conflicts found❌ Failed to cleanly apply 788687f on top of patchback/backports/3.14/788687f1fe1f9d443f3edd855070fde5c9caaceb/pr-2547 Backporting merged PR #2547 into main
🤖 @patchback |
closes #2479