Closed edsantiago closed 3 days ago
Same thing with 20241010
, which I did not ^C
This doesn't seem to be specific to skopeo
, as I can reproduce it with podman push quay.io/libpod/testimage:20241009 dir:/tmp/sdfsdf
, so I suspect it's in either containers/image or containers/storage. Adding --dest-compress
to the skopeo copy
command to force recompression seems to work around it.
The manifest contains
"annotations": {
"io.github.containers.compression.zstd": "true"
},
The old (currently used) testimage 20240123 does not so I assume this might have something to do with zstd compression
Notes:
quay.io/libpod/testimage@sha256:d58f79a56a477ac8ed3c07aa2c8f68cd05e2afdd754d40463dbf888798590aae
c/storage.Layer.UncompressedSize
… and that size seems to come from adding the size of file contents ( chunkedDiffer.mergeTocEntries
). Yes, that’s not going to work.
I think I know how to fix this, working on it now.
If that hypothesis is correct, this means that re-pushes of zstd:chunked layers have been broken for about 1.5 years — i.e. we have a testing gap.
We have many zstd testing gaps. We've never actually done any real testing anywhere in CI, only very-halfhearted efforts.
I wonder if this is the bug that keeps blocking my buildah parallel tests PR?
https://github.com/containers/storage/pull/2130 might be a fix (absolutely untested!) to unblock, we should have a better one.
Do we have a generic: "push an image (using our default settings); pull it (without reusing any layers); push it again" test? That’s essentially what broke here.
Confirmed that (an updated version of) https://github.com/containers/storage/pull/2130 fixes this, the metadata now contains the correct size.
A friendly reminder that this issue had no activity for 30 days.
This works correctly with skopeo-1.17.0-1.fc41.x86_64
.
Possibly a broken image or manifest? And possibly because I ^Ced the first time I pushed it, then rebuilt it and pushed a completely different one? Anyhow I don't know the root cause nor how to investigate further nor even where to report this or if it's even a bug.
skopeo copy docker://quay.io/libpod/testimage:20241009
works just fine.