> On Aug. 15, 2018, 8:50 p.m., Jie Yu wrote:
> > what’s the filesystem layout for the cache when v2 schema 2 is used?
> > The layout for schema 1 is here:
> > https://github.com/apache/mesos/blob/master/src/slave/containerizer/mesos/provisioner/docker/paths.hpp#L31-L46
> > 
> > as far as I know, layer_id does not apply to schema 2. What do you use for 
> > the key?
> 
> Jie Yu wrote:
>     I think the layout we're currently using in the cache is actually v1. The 
> reason for that is legacy (because we want to also support local puller, and 
> at that time, the layout is v1).
>     
>     And we wanted to switch to use v2 instead for a long time. But I don't 
> think we should mix v1 and v2 in the same `layers` dir.
>     
>     I'd rather see v2 being a totally separate cache that's content 
> addressible.
>     
>     I think @gilbert has some thoughts on the v2 (or unified artifacts store) 
> cache layout, @gilbert, can you share it here?

The filesystem layout is in fact not changed. What we are doing right now is 
pulling both schema 1 and schema 2 manifests. All the previous schema 1 logic 
including filesystem layout is unchanged, and schema 2 manifest is only used to 
support features not supported by schema 1, for example, pulling layers with 
urls in this patch. According to the backward compatibility of [schema 
2](https://docs.docker.com/registry/spec/manifest-v2-2/#backward-compatibility),
 schema 1 is always present, but schema 2 may not be present. Therefore, it is 
reasonable to keep the schema 1 logic, and use schema 2 only for additional 
support.


- Liangyu


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


On Aug. 6, 2018, 6:45 p.m., Liangyu Zhao wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/67931/
> -----------------------------------------------------------
> 
> (Updated Aug. 6, 2018, 6:45 p.m.)
> 
> 
> Review request for mesos, Akash Gupta, Andrew Schwartzmeyer, Gilbert Song, 
> Jie Yu, Joseph Wu, and Qian Zhang.
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Added support for parsing schema 2 and fetching blob with multiple
> URLs as specified in schema 2. Also updated `curl` version to 7.61.0
> because of a bug encountered in version 7.57.0.
> 
> 
> Diffs
> -----
> 
>   3rdparty/CMakeLists.txt 629b1968775da4d128b8d36c77d75efa303b0b7c 
>   3rdparty/cmake/Versions.cmake c65d7b3d2d48ce9d0b4777aeb12fdf5b605803ac 
>   include/mesos/docker/spec.hpp 2879414dc42ffe633ac74b51e1bb116698c41162 
>   include/mesos/docker/v2_2.hpp PRE-CREATION 
>   include/mesos/docker/v2_2.proto PRE-CREATION 
>   include/mesos/uri/fetcher.hpp 760d6b33234d8efdc533c0c6f05e83a5c7d1f56b 
>   src/CMakeLists.txt a80b011bbd5c418ae66eb8dd7697d070168462bb 
>   src/Makefile.am cf0cf22b3f582d3d4427f13288af3845aef45263 
>   src/docker/spec.cpp 96fbf1f9cf1c2c4b2383607a97990f3a9156e6d9 
>   src/slave/containerizer/mesos/containerizer.cpp 
> 98129d006cda9b65804b518619b6addc8990410a 
>   src/slave/containerizer/mesos/provisioner/docker/registry_puller.cpp 
> a5683e3fe15dd35596122fcc0c580ae9d3adf7f2 
>   src/uri/fetcher.hpp fbf64c6767dea3aa0798f68db8322ce47cd8ad36 
>   src/uri/fetcher.cpp 489c7ce0198ee6803dcc8eb9710b292fa743a0e8 
>   src/uri/fetchers/docker.hpp 7a6193dd75dc10846f52cb039f6a162cc8805c16 
>   src/uri/fetchers/docker.cpp 55ca118660872a933a2dc186723bec6a39ee80f7 
> 
> 
> Diff: https://reviews.apache.org/r/67931/diff/6/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Liangyu Zhao
> 
>

Reply via email to