Skip to content
containerd 1.0.2

Welcome to the v1.0.2 release of containerd!

This is the second patch release for `containerd` in the 1.0 series. There are
several fixes to reduce memory usage and garbage collection pressure in the
shim. The content store has a few fixes to address cases where download
resumption wasn't working properly. The image store has fixes to be more
efficient and to handle edge cases in the garbage collector. Less CPU will be
used when collecting cgroup metrics.

The most critical fix addresses a hang in runc that can happen due to a race
condition around FIFOs. Make sure to update your runc binary if you are
affected. The fix is described in
https://github.com/opencontainers/runc/pull/1698. Make sure to update to the
runc version in
https://github.com/containerd/containerd/blob/master/RUNC.md to ensure you are not affected.

In addition to the above, a few fixes for handling of layer files have been backported. https://github.com/containerd/containerd/pull/2063
addresses an issue where duplicate directory entries can land in a layer diff
if both the metadata and a child entry are changed.
https://github.com/containerd/containerd/pull/2103 where whiteout files for
parent directories may be missing and a related diff bug https://github.com/containerd/containerd/pull/2127.

The license of the dependency `BurntSushi/toml` has been updated to an MIT
license.

We also now ensure that the vendor directory contents are as expected.

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors

* Akihiro Suda
* Daniel Nephin
* Derek McGowan
* Kenfe-Mickaël Laventure
* Li Yi
* Michael Crosby
* Phil Estes
* Stephen J Day

Changes

* cfd04396dc Merge pull request #2128 from dmcgowan/release-1.0.2-release-notes
* a43eff64a4 release: prepare 1.0.2
* b99bbe9d83 Merge pull request #2127 from dmcgowan/cherry-pick-2119
* 84dc1651ec Ensure rmdir gets set for every directory
* a8bf017049 Add test for consecutive directory removal
* 53aaa89850 Merge pull request #2104 from stevvooe/prepare-1.0.2-rc.1
* 76699291e6 release: prepare 1.0.2-rc.1
* 37a05d4b56 Merge pull request #2110 from crosbymichael/release-onclose
* d1d3fd0f88 Delete task on dead shim
* 04b5f3fbbf Set OnClose shim function
* 4d0f40cdff Update ttrpc to d4528379866b0ce7e9d71f3eb96f0582fc
* 6ddb0bd96a Merge pull request #2103 from dmcgowan/backport-1.0-2095
* bed74e242e Fixes missing whiteout parent directories
* 7193749fb0 Merge pull request #2102 from dnephin/fix-vendor-validation
* b9640ad1d9 Fix vendor.conf now that it is validated
* 043828fb88 Fix vendor validation
* 5e1c6f6c21 Add a vendor check to CI
* 309d3b3083 Remove go install from Makefile
* 04c223f69e Merge pull request #2101 from AkihiroSuda/remove-wtf-1.0
* 4e2e564c6f vendor: update BurntSushi/toml for MIT license
* 96df811cf4 Merge pull request #2087 from crosbymichael/cherry-cgroups
* 64f913d7e3 Bump cgroups to c0710c92e8b3a44681d1321dcfd1360fc5
* 8b098d036b Merge pull request #2074 from stevvooe/prepare-1.0.2-rc.0
* a67e9d2718 release: prepare 1.0.2-rc.0
* b17f5b8354 Merge pull request #2077 from estesp/cherrypick-ensure-content-unique
* 91c3b8bffc content/testsuite: pass context to hold lease
* c910b4705d content/testsuite: ensure unique content per test
* 29a899b98d Merge pull request #2072 from dmcgowan/cherry-pick-content-discard
* 45e7aa529b Update copy to discard over truncate
* d7a0e70274 Add resume content test cases
* 3e89d82e05 Merge pull request #2063 from dmcgowan/cherry-pick-2054
* 9016ae9002 Merge pull request #2062 from stevvooe/cherry-pick-#2059
* 5c21576e40 Fix duplicate directories entries on metadata change
* af4455b3b3 vendor: update go-runc to reduce gc pressure
* c10ef55c04 Merge pull request #2057 from stevvooe/cherry-pick-#2056
* 3f98e5d0fc Merge pull request #2058 from stevvooe/cherry-pick-#2055
* f042dc58e5 cmd/containerd-shim: aggressive memory reclamation
* 8cf32d34bb cmd/containerd-shim, reaper: reduce channel allocation
* 0f46dd5190 Merge pull request #2051 from stevvooe/cherry-pick-#2036
* 367eddb4be archive, cio, cmd, linux: use buffer pools
* a4837f3307 Merge pull request #2050 from crosbymichael/bump-runc-r
* 852f989a87 Update runc to 9f9c96235cc97674e935002fc3d78361b69
* 383a6dea31 Merge pull request #2034 from estesp/cherrypick-npe-fix
* a03fb1bd13 Fix NPE in dialer
* d2179c2dc1 Merge pull request #2018 from dmcgowan/cherry-pick-image-removal-gc
* d04746b416 Update metadata image store to be initialized once
* 5a67161dc0 Update namespace empty check to use buckets

Dependency Changes

Previous release can be found at [v1.0.1](https://github.com/containerd/containerd/releases/tag/v1.0.1)

* 29da22c6171a4316169f9205ab6c49f59b5b852f -> c0710c92e8b3a44681d1321dcfd1360fc5c6c089 **github.com/containerd/cgroups**
* d2710463e497617f16f26d1e715a3308609e7982 -> d4528379866b0ce7e9d71f3eb96f0582fc374577 **github.com/stevvooe/ttrpc**
* ed1cbe1fc31f5fb2359d3a54b6330d1a097858b7 -> 4f6e87ae043f859a38255247b49c9abc262d002f **github.com/containerd/go-runc**
* 7f24b40cc5423969b4554ef04ba0b00e2b4ba010 -> 9f9c96235cc97674e935002fc3d78361b696a69e **github.com/opencontainers/runc**
* v0.2.0-21-g9906417 -> a368813c5e648fee92e5f6c30e3944ff9d5e8895 **github.com/BurntSushi/toml**