> 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 > >
