Skip to content

pull: fix content blobs deletion on pull race#1013

Merged
tiborvass merged 4 commits intomoby:masterfrom
tonistiigi:pull-leases
May 30, 2019
Merged

pull: fix content blobs deletion on pull race#1013
tiborvass merged 4 commits intomoby:masterfrom
tonistiigi:pull-leases

Conversation

@tonistiigi
Copy link
Copy Markdown
Member

This fixes a race where gc cleans up a ref that holds the same blob that is pulled by another ref. Now blobs are kept by a lease during pull, avoiding containerd for cleaning them up. And inserting a blob mapping recreates the root label.

fixes #992 (traces in #991)

@dmcgowan @AkihiroSuda @msg555

Signed-off-by: Tonis Tiigi tonistiigi@gmail.com

@msg555
Copy link
Copy Markdown
Contributor

msg555 commented May 21, 2019

<3 will give it a try tonight

@msg555 msg555 mentioned this pull request May 21, 2019
@tonistiigi tonistiigi force-pushed the pull-leases branch 2 times, most recently from a4e1fa0 to d89fe4a Compare May 22, 2019 00:20
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
@tonistiigi
Copy link
Copy Markdown
Member Author

Added another commit for long-running time-based lease for manifest and config blobs. This should be rewritten after containerd/containerd#3295 containerd/containerd#3307 with completely removing root labels, that should fix the need for buildkit taking ownership of the namespace and properly clean up canceled pulls.

@dmcgowan

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
@tiborvass tiborvass merged commit c13518e into moby:master May 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Failed to get reader from content store

3 participants