mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gilbert Song <songzihao1...@gmail.com>
Subject Re: Review Request 54215: Fixed duplicate image layer ids returned by docker store.
Date Tue, 24 Jan 2017 20:27:31 GMT


> On Jan. 22, 2017, 11:19 a.m., Jie Yu wrote:
> > Let's take a look how docker handles this case.
> > 
> > My feeling is that it's ok to have duplicated layers because what if I want to apply
the same content more than once?

If there exists duplicate layers in an image. Those layers will still be pulled and untarred
to the store. Since the layer id is unique depending on the content, so there is only single
layer in the store. For the same content, it does not change any if we mount/copy them twice.

In docker the layer ids are imported from the store by reading the disk:
https://github.com/docker/docker/blob/master/layer/filestore.go#L310

so the layer ids should be unique when the layer store loads the layers:
https://github.com/docker/docker/blob/master/layer/layer_store.go#L90


- Gilbert


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/54215/#review162580
-----------------------------------------------------------


On Jan. 19, 2017, 4:08 a.m., Gilbert Song wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/54215/
> -----------------------------------------------------------
> 
> (Updated Jan. 19, 2017, 4:08 a.m.)
> 
> 
> Review request for mesos, Avinash sridharan, Artem Harutyunyan, Jie Yu, Qian Zhang, and
Zhitao Li.
> 
> 
> Bugs: MESOS-6654
>     https://issues.apache.org/jira/browse/MESOS-6654
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> This issue is exposed by pulling the 'mesosphere/inky' docker
> image using registry puller. Due to the duplicate layer id
> from the manifest, there are duplicate layer pathes passed
> to the backend. The aufs backend cannot handle this case and
> returns 'invalid arguments' error. Ideally, we should make
> sure that layer paths that are passed to the backend are
> unique.
> 
> 
> Diffs
> -----
> 
>   src/slave/containerizer/mesos/provisioner/docker/store.cpp 9dccd0673dbc0c61abfd4b88097f86e7d7131c46

> 
> Diff: https://reviews.apache.org/r/54215/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Tested by the unit test `ROOT_CURL_INTERNET_DockerDefaultEntryptRegistryPuller`.
> 
> Manually tested using the `mesosphere/inky` image, which contains duplicate layer ids.
> 
> 
> Thanks,
> 
> Gilbert Song
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message