-
Notifications
You must be signed in to change notification settings - Fork 876
Vendor containers/{image,storage} for faster compression and parallel pulls #1244
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
Conversation
|
This works in openshift/builder 👍 |
|
LGTM |
|
Very odd errors in Travis: |
|
Looks like a different change is not handling localhost correctly. |
|
It's a regression in c/image. We're on it :) |
I think you're right. I can reproduce the issue on a vanilla master locally. |
6eac228 to
a0bf1db
Compare
|
The localhost warnings/errors are red herrings. It actually comes from the progress bars writing to stdout which will then be read by the scripts and interpreted as IDs. Will tackle this issue tomorrow. |
|
Can we just tell the output to be quiet? |
|
I don’t think that’s user friendly as the progress won’t be shown. I’ll
tackle it tomorrow and will add a test to Skopeo catching such regressions.
…On Wed 19. Dec 2018 at 18:20, Daniel J Walsh ***@***.***> wrote:
Can we just tell the output to be quiet?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#1244 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ALI4g-KCGuJlvz2vD9UC98w1YZooNTZfks5u6nVFgaJpZM4ZZ9BF>
.
|
|
☔ The latest upstream changes (presumably 4674656) made this pull request unmergeable. Please resolve the merge conflicts. |
a0bf1db to
e810b71
Compare
Update vendoring of containers/storage and containers/image to improve pulls and pushes compression speeds. Signed-off-by: Daniel J Walsh <[email protected]>
e810b71 to
c40132f
Compare
930fe49 to
759f40b
Compare
TomSweeneyRedHat
left a comment
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.
|
same from me, LGTM beside the change in the tests |
|
Alright ... this is to be expected and actually @vbatts has warned us about this. The compressed objects are now different on which we're computing the checksums. It still seems to work in some cases but I need to digg deeper in the code/ |
|
@vrothberg @mtrmac @nalind What is the verdict on this one? |
|
Alright. I've manually reproduced the tests before this change and with this change. To me, everything looks fine. In a simplified way, the tests in question first pull-and-build (with cache) to After the change, the tests were complaining because the base layer (i.e., busybox) was not matching between cache and no-cache which makes sense as the layer in cache was compressed with pgzip while the layer in no-cache is the one we pulled which was compressed differently. In other words, the test was just working before this change because the layers we pulled were compressed with the very same library Buildah was using. In yet other words, we would hit this issue sooner or later once the gzip compression of the stdlib is changed (which is happening). Or in the words of @vbatts: it was a mistake computing digests on compressed objects. I have a screenshot with 8 tmux tiles that I can use to explain this situation in case you want to verify my above claims. What I suggest to do is to remove the no-cache comparisons from the tests as those are prone to errors. It was really painful to reproduce 😿 |
Remove error-prone parts of the explicit push tests that push to a directory without using the blob-cache. The proneness relates directly to the fact that the layers of pulled images (i.e., the busybox base image) are compressed with another gzip library the blobs in Buildah's cache, which now use pgzip. Signed-off-by: Valentin Rothberg <[email protected]>
Parallel copying of layers is currently supported when pulling from a registry to the storage. Signed-off-by: Valentin Rothberg <[email protected]>
759f40b to
08e9423
Compare
|
I updated the tests (see d88807e). |
@mtrmac could you ack 👼 |
|
@vrothberg SGTM |
|
Three Travis jobs hit the timeout (now restarted). |
Right
The other way around AFAICS: The cache contains the original compressed version (and a decompressed version); whereas
Yes.
Yes, for now. So, LGTM. Ultimately, though, the data flow in buildah would really benefit from a closer [or is that more high-level?] look, quite apart from the
I don’t understand c/storage enough to know whether |
|
Lets bring up the rest of the discussion with @nalind When he gets back. |
|
📌 Commit 759f40b has been approved by |
|
@rh-atomic-bot retry |
|
The bot seems to have a cold :^) |
|
We want this vendored into openshift/builder next. |
No description provided.