{"push_id":2320909502,"size":13,"distinct_size":13,"ref":"refs/heads/master","head":"a86ff8c36532f97b6eb6b44c6f871de24afbcc4d","before":"988bab82fdad15bdccb8999e939ac9ed32d89c80","commits":[{"sha":"65df55a40245fea1a52744a2e3290b37f0cc5011","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Windows: Moved \"kill on close\" job object flag to own function.\n\nInstead of setting this flag unconditionally when we create a job\nobject, this patch abstracts it to the function\n`set_job_kill_on_close_limit(pid_t)` so that users can choose how to tie\njob object lifetimes together.\n\nReview: https://reviews.apache.org/r/65399","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/65df55a40245fea1a52744a2e3290b37f0cc5011"},{"sha":"42d57869b46fe2333fb3c0ac43572c95d0ac577c","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Windows: Tied task lifetimes to executors.\n\nTo enable recovery of checkpointed tasks, the agent must be able to die\nwithout also killing the executors and tasks, thus we cannot set the\n\"job object kill on close\" limit unconditionally. However, the executors\nmust still be able to kill their tasks when they die, so we explicitly\nenable this limit through a parent hook when launching the container for\nthe task. In this way, the agent can be restarted (e.g. for an upgrade)\nwithout killing the executors, but the executors are still capable of\nkilling their tasks on catastrophic death.\n\nReview: https://reviews.apache.org/r/65400","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/42d57869b46fe2333fb3c0ac43572c95d0ac577c"},{"sha":"bdfee0cbc174c0960c87f05e3572f1b78d66fe9c","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Windows: Enabled `Flags::runtime_directory` for checkpointing.\n\nThis had previously been compiled out on Windows, but we bring it back\nin order to support checkpointing.\n\nReview: https://reviews.apache.org/r/65401","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/bdfee0cbc174c0960c87f05e3572f1b78d66fe9c"},{"sha":"9bde2aeb15045b3e255bc60afa535201fbb8c3ea","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Windows: Used Unicode API to duplicate sockets.\n\nThis code was still using the macro `::WSADuplicateSocket` instead of\nthe explicit Unicode version `::WSADuplicateSocketW`. Because `UNICODE`\nhas been defined, the code logically has not changed, but the comment\nwas out-of-date, and the warning no longer needs to be disabled.\n\nWe've left file handle duplication alone for a subsequent patch to fix,\nas there are side effects from the implicit inheritance semantics of\n`::_dup` that we currently rely on.\n\nReview: https://reviews.apache.org/r/65402","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/9bde2aeb15045b3e255bc60afa535201fbb8c3ea"},{"sha":"32c300e534aab80897238649fb1b1b36380475c1","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Implemented `net::socket()` for Windows using `WSASocket`.\n\nRather than reusing the existing `net::socket()` wrapper for Windows,\nthe original wrapper was moved to `posix/socket.hpp`, and a new wrapper\nwas written in `windows/socket.hpp` which uses `::WSASocket()` instead\nof `::socket()` and takes an optional set of Windows socket flags.\n\nWe enable `WSA_FLAG_OVERLAPPED` so that the socket supports overlapped\nI/O operations (the default behavior of `::socket()`; MSDN states that\nmost sockets should be created with this flag set, so it is a reasonable\ndefault.\n\nFurthermore, we enable `WSA_FLAG_NO_HANDLE_INHERIT`, which disables\ninheritance of socket handles. This is set by default because it is not\npossible to change afterwards, we never use inheritable sockets, and we\ndo not want children to inherit our sockets. This fixes bugs due to\nchild processes inadvertantly inheriting sockets. For example, in the\nrecovery process of the Mesos agent, executors were unable to\nre-register because of leaked sockets, preventing communication to the\nnew agent.\n\nReview: https://reviews.apache.org/r/65405","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/32c300e534aab80897238649fb1b1b36380475c1"},{"sha":"b7cfcd7a71652858ba005171e242b679b26dc4ee","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Added `TYPED_TEST_TEMP_DISABLED_ON_WINDOWS` macro.\n\nThis lets us temporarily disable `TYPED_TEST` unit tests on Windows.\n\nReview: https://reviews.apache.org/r/65406","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/b7cfcd7a71652858ba005171e242b679b26dc4ee"},{"sha":"5c8b1e7db88a098a9d3133012af461e5baba9b6b","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Windows: Enabled tests that were blocked by MESOS-7604.\n\nThis commit enables tests that were previously disabled on Windows due\nto MESOS-7604.\n\nReview: https://reviews.apache.org/r/65407","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/5c8b1e7db88a098a9d3133012af461e5baba9b6b"},{"sha":"e4b3199110655c4a35755df047c3098cfaf35388","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Windows: Ported `slave_recovery_tests.cpp`.\n\nThis commit enables the unit tests found in `slave_recovery_tests.cpp`\nto test agent recovery on Windows.\n\nReview: https://reviews.apache.org/r/65408","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/e4b3199110655c4a35755df047c3098cfaf35388"},{"sha":"0bc1c8ce3d0a84419c96f696e8e8c56c9ad85c79","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Fixed `SlaveRecoveryTest.ReconcileTasksMissingFromSlave`.\n\nBecause it is not possible to delete a file (or a folder recursively)\nwith open handles on Windows, we have to explicitly `reset()` the agent\nbefore removing the framework meta directory. Otherwise, the task status\nupdate manager will be destructed too late, and so an open handle for\n`task.updates` will cause the `os::rmdir` to fail.\n\nThis is safe because we previously destructed the agent anyway, just\nlater in the test when it was reassigned.\n\nReview: https://reviews.apache.org/r/65409","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/0bc1c8ce3d0a84419c96f696e8e8c56c9ad85c79"},{"sha":"04990253e6e7986904141e98e0b6e7008b0f0771","author":{"name":"Andrew Schwartzmeyer","email":"6b7c097d961f68685fc978cf91eeae17be6cbb45@schwartzmeyer.com"},"message":"Windows: Fixed recovery of Mesos containerizer.\n\nThe Windows OS deletes the job object created in the agent process when\nthe agent dies, because no other process holds a handle to it (despite\nprocesses being assigned to the job object). While this is\ncounter-intuitive, it is the observed behavior. So in order for recovery\nto succeed, the containerizer must also hold an otherwise unused handle\nto its job object to keep it alive in the kernel, and available for\nrecovery to find.\n\nReview: https://reviews.apache.org/r/65465","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/04990253e6e7986904141e98e0b6e7008b0f0771"},{"sha":"2ece53c39a3e791f6892c4a734b6d3187f184190","author":{"name":"Jie Yu","email":"f7222f05d12e3ba12bb04fd30f9be9baa697b227@gmail.com"},"message":"Added named cgroup hierarchy support.\n\nThis patch add a helper to get the cgroup associated with the given\npid for a named cgroup hierarchy.\n\nReview: https://reviews.apache.org/r/62798","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/2ece53c39a3e791f6892c4a734b6d3187f184190"},{"sha":"05a2909508df56253372b4fe36330339b5de00b1","author":{"name":"Jie Yu","email":"f7222f05d12e3ba12bb04fd30f9be9baa697b227@gmail.com"},"message":"Fixed an issue for the I/O switchboard process lifetime.\n\nWe expect the I/O switchboard process to last across agent restarts\n(similar to log rotate process or executor processes). Therefore, we\nshould put it into 'mesos_executor.slice' like others.\n\nReview: https://reviews.apache.org/r/62799","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/05a2909508df56253372b4fe36330339b5de00b1"},{"sha":"a86ff8c36532f97b6eb6b44c6f871de24afbcc4d","author":{"name":"Jie Yu","email":"f7222f05d12e3ba12bb04fd30f9be9baa697b227@gmail.com"},"message":"Created cgroups under systemd hierarchy in LinuxLauncher.\n\nThis patch added the support for systemd hierarchy in LinuxLauncher.\nIt created the same cgroup layout under the systemd hierarchy (if\nsystemd is enabled) as that in the freezer hierarchy.\n\nThis can give us a bunch of benefits:\n1) systemd-cgls can list mesos container processes.\n2) systemd-cgtop can show stats for mesos containers.\n3) Avoid the pid migration issue described in MESOS-3352.\n\nFor example:\n\n```\n[jie@core-dev ~]$ systemd-cgls\n|-1 /usr/lib/systemd/systemd --system --deserialize 20\n|-mesos\n|  |-8282b91a-5724-4964-a623-7c6bd68ff4ad\n|  |-31737 /usr/libexec/mesos/mesos-containerizer launch\n|  |-31739 mesos-default-executor --launcher_dir=/usr/libexec/mesos\n|  |-mesos\n|     |-8555f4af-fa4f-4c9c-aeb3-0c9f72e6a2de\n|       |-31791 /usr/libexec/mesos/mesos-containerizer launch\n|       |-31793 sleep 1000\n```\n\nReview: https://reviews.apache.org/r/62800","distinct":true,"url":"https://api.github.com/repos/mpark/mesos/commits/a86ff8c36532f97b6eb6b44c6f871de24afbcc4d"}]}
{"actor":{"display_login":"mpark"}}