1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/distribution
Aaron Lehmann f05d42ee03 Fix concurrent uploads that share layers
Concurrent uploads which share layers worked correctly as of #18353,
but unfortunately #18785 caused a regression. This PR removed the logic
that shares digests between different push sessions. This overlooked the
case where one session was waiting for another session to upload a
layer.

This commit adds back the ability to propagate this digest information,
using the distribution.Descriptor type because this is what is received
from stats and uploads, and also what is ultimately needed for building
the manifest.

Surprisingly, there was no test covering this case. This commit adds
one. It fails without the fix.

See recent comments on #9132.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
(cherry picked from commit 5c99eebe81)
2016-03-07 16:30:52 -05:00
..
fixtures/validate_manifest
metadata Changes cross-repository blob mounting to a blob Create option 2016-01-14 14:26:03 -08:00
xfer Fix concurrent uploads that share layers 2016-03-07 16:30:52 -05:00
pull.go Revert reporting of multiple pull errors 2016-01-26 12:58:49 -08:00
pull_v1.go Make v1 pull/push output consistent with v2 2015-12-16 15:02:24 -08:00
pull_v2.go Remove temporary layer download file on error 2016-01-26 12:59:00 -08:00
pull_v2_test.go Add schema2 pull support 2016-01-08 17:24:21 -08:00
pull_v2_unix.go
pull_v2_windows.go
push.go Fix panic on network timeout during push 2016-02-02 13:46:13 -05:00
push_v1.go Make v1 pull/push output consistent with v2 2015-12-16 15:02:24 -08:00
push_v2.go Fix concurrent uploads that share layers 2016-03-07 16:30:52 -05:00
registry.go Revert "Set idle timeouts for HTTP reads and writes in communications with the registry" 2016-02-03 17:31:24 -05:00
registry_unit_test.go Modify import paths to point to the new engine-api package. 2016-01-06 19:48:59 -05:00