----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/50871/#review163438 -----------------------------------------------------------
Fix it, then Ship it! I'll fix the issues below for you. src/slave/containerizer/mesos/provisioner/docker/metadata_manager.cpp (lines 50 - 51) <https://reviews.apache.org/r/50871/#comment234902> No needed anymore? src/slave/containerizer/mesos/provisioner/docker/metadata_manager.cpp (lines 231 - 257) <https://reviews.apache.org/r/50871/#comment234905> Looks like this missing layer check is best effort now. I'd suggest we simply remove it. The 'storedImage' will simply be a layer id cache. src/slave/containerizer/mesos/provisioner/docker/paths.hpp (line 22) <https://reviews.apache.org/r/50871/#comment234904> Why this? src/slave/containerizer/mesos/provisioner/provisioner.hpp (line 117) <https://reviews.apache.org/r/50871/#comment234892> Do you still need this for ProvisionerProcess? src/slave/containerizer/mesos/provisioner/provisioner.cpp (lines 68 - 69) <https://reviews.apache.org/r/50871/#comment234901> It's not host filesystem, but the underlying filesystem for a specific directory. src/slave/containerizer/mesos/provisioner/provisioner.cpp (line 78) <https://reviews.apache.org/r/50871/#comment234900> I'd rename this to 'validateBackend' src/slave/containerizer/mesos/provisioner/provisioner.cpp (line 121) <https://reviews.apache.org/r/50871/#comment234899> I would kill this helper as it's only used once. I'll just inline the implementation in Provisioner::create. src/slave/containerizer/mesos/provisioner/provisioner.cpp (line 122) <https://reviews.apache.org/r/50871/#comment234894> I would use `const Option<string>& backend` here. src/slave/containerizer/mesos/provisioner/provisioner.cpp (line 127) <https://reviews.apache.org/r/50871/#comment234896> We should not only check 'provisionerDir' but also all the store dir as well. I'll leave a TODO here at the moment. Please create a ticket to track. I think what we might need to track a per store default backend because each store might have a different store dir. src/slave/containerizer/mesos/provisioner/provisioner.cpp (line 176) <https://reviews.apache.org/r/50871/#comment234898> What if copy backend is not supported? I know it is not possible at the moment, but would prefer writing the code a bit more defensively in case there're future changes. - Jie Yu On Jan. 26, 2017, 1:37 a.m., Gilbert Song wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/50871/ > ----------------------------------------------------------- > > (Updated Jan. 26, 2017, 1:37 a.m.) > > > Review request for mesos, Avinash sridharan, Artem Harutyunyan, Jie Yu, and > Timothy Chen. > > > Bugs: MESOS-5931 > https://issues.apache.org/jira/browse/MESOS-5931 > > > Repository: mesos > > > Description > ------- > > Select a backend smartly. Currently, the logic is really > simple: > 1. Use overlayfs backend if it exists. > 2. Use aufs backend if the overlayfs does not exists. > 3. Use copy backend of both overlayfs and aufs do not exist. > Please note that the bind backend needs to be specified explicitly > through the agent flag '--image_provisioner_backend' since it > requires the sandbox already existed. > > > Diffs > ----- > > docs/configuration.md 2113d06f58dddc0a28ae1241a24096266fe39801 > src/slave/containerizer/mesos/provisioner/appc/store.hpp > 26cdd2fba142874ab1d3eca61222bb22bfbb2e13 > src/slave/containerizer/mesos/provisioner/appc/store.cpp > e63ae419e24212b887edddeb5cae114cd39b39c8 > src/slave/containerizer/mesos/provisioner/docker/local_puller.hpp > abb8e7e48422896f207a475661ced0530fc75e68 > src/slave/containerizer/mesos/provisioner/docker/local_puller.cpp > 817e30c5d6d6a4b011193e3209301fc3cdf88b06 > src/slave/containerizer/mesos/provisioner/docker/metadata_manager.cpp > 395c36b0f6b8f8e037681ec5f2df99e83a7cf155 > src/slave/containerizer/mesos/provisioner/docker/paths.hpp > 232c027f8f96da0cb30b957bce4607d3695050d2 > src/slave/containerizer/mesos/provisioner/docker/puller.hpp > 191f3fc8cd1e0f706b5b1e6afddf856e8d53ae6e > src/slave/containerizer/mesos/provisioner/docker/registry_puller.hpp > bbd6005317bed3fff3d86e2527ca3ead839d49e3 > src/slave/containerizer/mesos/provisioner/docker/registry_puller.cpp > cecf34a23329a64fdbce7de4b83827a30975e9a4 > src/slave/containerizer/mesos/provisioner/docker/store.hpp > 1c2b149823e83dc5a3feb0af599d651d1dc05682 > src/slave/containerizer/mesos/provisioner/docker/store.cpp > 9dccd0673dbc0c61abfd4b88097f86e7d7131c46 > src/slave/containerizer/mesos/provisioner/provisioner.hpp > 0a48617d6f9ade928993e1d5205de6486ef657c7 > src/slave/containerizer/mesos/provisioner/provisioner.cpp > 519028236305e9c8c1b6cded1919a5dd7ca3dbed > src/slave/containerizer/mesos/provisioner/store.hpp > a312ad953b406aa75506051593dcc1c27cdc93af > src/slave/flags.hpp 6ac0d45072157f6741b96266886a326e9337c153 > src/slave/flags.cpp d976fb80b9d1e634ce0ca8e8ad35aa64959a4853 > src/tests/containerizer/provisioner_appc_tests.cpp > 4d4ebba92ae66767903edc7a4f6edd9c6fee2489 > src/tests/containerizer/provisioner_docker_tests.cpp > d9472bb44cde999f95a8a65e6eee13f1f0fc09ed > src/tests/containerizer/store.hpp 5abe3f6d211f1d8f5b2a3da977f5a46f4d13b207 > > Diff: https://reviews.apache.org/r/50871/diff/ > > > Testing > ------- > > make check > > sudo ./bin/mesos-tests.sh > > > Thanks, > > Gilbert Song > >