----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/51402/#review148300 -----------------------------------------------------------
src/slave/containerizer/mesos/provisioner/provisioner.cpp (lines 194 - 197) <https://reviews.apache.org/r/51402/#comment215780> I realized that it's not sufficient to just pass in top level orphan containers to provisioners/isolators. We also want to know about known child containers for both checkpointed containers and orphan containers so that provisioners/isolators can cleanup unknown child containers. Consider the following case: 1) containerizer launched a child container A/B under top level container A 2) isolator prepare finishes for container A/B 3) agent crashes before launcher fork is called 4) agent recovers 5) container A is checkpointed, thus considered alive 6) however, provisioners/isolators need to cleanup for container A/B as it's unknown to the launcher Therefore, I suggest we introduce a protobuf 'ContainerRecoverInfo' in `include/mesos/slave/containerizer.proto`: ``` message ContainerRecoverInfo { repeated ContainerState checkpointed_containers; repeated ContainerID orphan_container_ids; // Deprecated. Top level orphans. repeated COntainerID known_container_ids; // All known containers, including child containers. } ``` And both Provisioner and Isolator recover interface will take this protobuf. - Jie Yu On Sept. 7, 2016, 6:49 p.m., Gilbert Song wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/51402/ > ----------------------------------------------------------- > > (Updated Sept. 7, 2016, 6:49 p.m.) > > > Review request for mesos, Benjamin Hindman, Artem Harutyunyan, Jie Yu, Joseph > Wu, and Kevin Klues. > > > Bugs: MESOS-6067 > https://issues.apache.org/jira/browse/MESOS-6067 > > > Repository: mesos > > > Description > ------- > > Added nested container check in provisioner destroy. > > > Diffs > ----- > > src/slave/containerizer/mesos/provisioner/provisioner.cpp > 8e35ff49ec99a242e764095dcfbb541c5e41ec71 > > Diff: https://reviews.apache.org/r/51402/diff/ > > > Testing > ------- > > make check > > > Thanks, > > Gilbert Song > >
