-
Notifications
You must be signed in to change notification settings - Fork 380
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
support progress channel for partial pulls #2585
Comments
@mtrmac PTAL, this is an issue with CRI-O since it fails to pull images that take more than 10 seconds |
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
Thanks, that’s an interesting interaction. I have commented on that for CRI-O in https://github.com/cri-o/cri-o/pull/8619/files#r1778887578 , perhaps it should be elevated to a separate issue. Notably, there’s also the “commit” phase of See also the various “This can take quite some time, and should ideally be cancellable” comments — even in the ordinary layer pull path, where we do generally report progress, we can stop for an arbitrarily-long time in So, partial pulls or not, it seems to me that this CRI-O logic is making assumptions on things c/image never promised, and I think short-term CRI-O might need to just give on that. That image pulls “happen very quickly and then hang after the ’Storing signatures’ message” (= in the commit phases) is a long-standing problem. For a long time, that was ~hard to fix without breaking the API of (Ideally, we’d somehow ~combine For this specific restricted issue as filed, we we already have |
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
See: containers/image#2585 Signed-off-by: Krzysztof Wilczyński <[email protected]>
currently we do not support progress channel for partial pulls. The entire logic implemented in
copy/progress_channel.go
is not used when a partial pull is used.It causes an issue with CRI-O as it uses the notifications from the progress channel to detect whether the pull is still alive, and in case it aborts the operation after 10 seconds.
Since there are some actions that might take more than 10 seconds even when there is no data incoming, e.g. converting to composefs, we should have a mechanism to keep alive the channel (maybe reports dummy events or new kind of notifications?).
The text was updated successfully, but these errors were encountered: