> On March 29, 2017, 9:36 p.m., Joseph Wu wrote: > > 3rdparty/libprocess/include/process/windows/jobobject.hpp > > Lines 33 (patched) > > <https://reviews.apache.org/r/57973/diff/1/?file=1677264#file1677264line33> > > > > Can you move this comment down to the `extern` below?
Whoops. > On March 29, 2017, 9:36 p.m., Joseph Wu wrote: > > 3rdparty/libprocess/include/process/windows/jobobject.hpp > > Lines 48-49 (patched) > > <https://reviews.apache.org/r/57973/diff/1/?file=1677264#file1677264line48> > > > > Try this: > > ``` > > process::reap(pid) > > .onAny(defer(self(), &Self::cleanup, lambda::_1, pid)); > > ``` I'll give it a shot... Michael and I had a fun time with this. > On March 29, 2017, 9:36 p.m., Joseph Wu wrote: > > 3rdparty/libprocess/include/process/windows/jobobject.hpp > > Lines 53 (patched) > > <https://reviews.apache.org/r/57973/diff/1/?file=1677264#file1677264line53> > > > > This shouldn't be a virtual function, presumably. True! > On March 29, 2017, 9:36 p.m., Joseph Wu wrote: > > 3rdparty/libprocess/include/process/windows/jobobject.hpp > > Lines 61-65 (patched) > > <https://reviews.apache.org/r/57973/diff/1/?file=1677264#file1677264line61> > > > > Hm... we need to clean these up eventually... > > > > What sort of statistics will be gathered? And how long does the job > > object need to live once gathered? So, this ties into the resource limit APIs etc. Presumably a task can crash (process ends) but the status still needs to be able to report I/O used etc. To answer your question of what sort of statistics, I would need to move foward with the TaskInfo mapping issue. Once gathered, the job object can be fully closed. > On March 29, 2017, 9:36 p.m., Joseph Wu wrote: > > 3rdparty/libprocess/include/process/windows/jobobject.hpp > > Lines 91-92 (patched) > > <https://reviews.apache.org/r/57973/diff/1/?file=1677264#file1677264line91> > > > > Outdated comment referring to the launcher here. Whoops. > On March 29, 2017, 9:36 p.m., Joseph Wu wrote: > > 3rdparty/libprocess/src/process.cpp > > Lines 1211 (patched) > > <https://reviews.apache.org/r/57973/diff/1/?file=1677265#file1677265line1211> > > > > Perhaps add `(Windows only)` here. Ah, yes. - Andrew ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/57973/#review170482 ----------------------------------------------------------- On March 27, 2017, 10:47 p.m., Andrew Schwartzmeyer wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/57973/ > ----------------------------------------------------------- > > (Updated March 27, 2017, 10:47 p.m.) > > > Review request for mesos, John Kordich, Joseph Wu, Li Li, and Michael Park. > > > Bugs: MESOS-6868 and MESOS-6892 > https://issues.apache.org/jira/browse/MESOS-6868 > https://issues.apache.org/jira/browse/MESOS-6892 > > > Repository: mesos > > > Description > ------- > > This commit adds a Windows specific actor for managing job objects. > > A subprocess launched with the `ParentHook::CREATE_JOB()` is created > within the context of a named Windows job object. The `JobObjectManager` > takes ownership of the handle to the job object. > > It is necessary to tie the lifetime of the job object to the actor by > ownership of the open handle so that the job object can be queried for > usage information even after the processes that were running within the > job object have ended. These semantics were not changed; previously the > same was achieved by leaking the handle and tieing it to the lifetime of > the actual Mesos agent process, and implicitly depending on the > operating system to close the open handle at the death of the process. > > We ensure the proper death of the job object process group by defering a > call to `cleanup()` to the process reaper for the given PID. This > function uses the Windows system call to terminate the job object via > `os::kill_job()`. > > > Diffs > ----- > > 3rdparty/libprocess/include/process/windows/jobobject.hpp PRE-CREATION > 3rdparty/libprocess/src/process.cpp > f6ee24e2db43d63d91222549efee85421bbf9bf3 > 3rdparty/libprocess/src/subprocess.cpp > 6dfb939ec151f724d383870a806ca3fc8fb0d931 > > > Diff: https://reviews.apache.org/r/57973/diff/1/ > > > Testing > ------- > > Testing done at end of chain. > > > Thanks, > > Andrew Schwartzmeyer > >
