-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Closed
Labels
status/more-info-neededAwaiting contributor informationAwaiting contributor information
Milestone
Description
Description
When trying to push multiplatform images using ctr , receiving the following error.
ctr: failed commit on ref "index-sha256:15303a32445f10470c0a8acde338002985f909c9b275d988202ad5cf5e04b247": cannot reuse body, request must be retried
I find this issue is kind of flaky or due to a race condition as this does not happen always. The error message displayed is coming from #3431
Steps to reproduce the issue
- Fetch the image using
ctr content fetch --all-platforms docker.io/akhilerm/node-disk-manager:ci - Push the image to a different registry with a different tag
ctr images push quay.io/akhilerm/node-disk-manager:ci docker.io/akhilerm/node-disk-manager:ci
- Try to push the same image again to the same repository with a different tag
ctr images push quay.io/akhilerm/node-disk-manager:latest docker.io/akhilerm/node-disk-manager:ci
Describe the results you received and expected
The following errors gets reported when the second tag is pushed.
ctr: failed commit on ref "index-sha256:15303a32445f10470c0a8acde338002985f909c9b275d988202ad5cf5e04b247": cannot reuse body, request must be retried
Additional details that I observed:
The push was always succeeding with the first tag, but failed in the subsequent pushes. Also, when a different source image was used, the push succeeds sometimes.
Expected:
The error should not happen and the multiplatform images should be pushed successfully.
What version of containerd are you using?
v1.3.0-4011-g0fdbd450d 0fdbd45
Any other relevant information
- The containerd version shows as 1.3.0, but I had built it from source after checking out to
v1.5.5 - I had made a single commit on top of 1.5.5 to add support for allowing auth from docker config, which I believe does not interfere with the pusher.
Client:
Version: v1.3.0-4011-g0fdbd450d
Revision: 0fdbd450d78c055767bb9e05dd8200e538873900
Go version: go1.17.1
Server:
Version: v1.3.0-4011-g0fdbd450d
Revision: 0fdbd450d78c055767bb9e05dd8200e538873900
UUID: bb212eea-7dee-413a-b4fc-241314b04150- containerd is running in a docker container for fetching and pushing images
- The error message comes from the changes in PR Fix bug in setting request body #3431
- The same error is being reported by buildkit push action which is believe is using containerd . Ref GAR error "cannot reuse body, request must be retried" docker/build-push-action#452
Show configuration if it is related to CRI plugin.
No response
gabrieldemarmiesse, stephan2012, Skarlso and seongjae-min
Metadata
Metadata
Assignees
Labels
status/more-info-neededAwaiting contributor informationAwaiting contributor information