----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/46168/ -----------------------------------------------------------
(Updated April 19, 2016, 11:05 p.m.) Review request for mesos, Bernd Mathiske, Jiang Yan Xu, and Zhitao Li. Bugs: MESOS-5119 https://issues.apache.org/jira/browse/MESOS-5119 Repository: mesos Description (updated) ------- Add subdirectory support to URI.filename field. URI.filename allows the user to specify the name of the file that will be saved in the sandbox when the URI is fetched, but previously it would fail at fetch time if "filename" had a directory component. This change allows users to specify a relative path for custom filenames within the sandbox. Diffs ----- 3rdparty/libprocess/3rdparty/CMakeLists.txt 7b3621d24a05a3b3b860e3b8c13a1531208e5e26 3rdparty/libprocess/3rdparty/Makefile.am 76f946dc11b66e86ce843808e371737b9e022e36 3rdparty/libprocess/3rdparty/http-parser/CMakeLists.txt.template 7f7105f5d55fd66f3e826c1c37c0074775bf89ea 3rdparty/libprocess/3rdparty/stout/include/Makefile.am 33ddb06e25920096f2d16d4f372129ee2f6a8721 3rdparty/libprocess/3rdparty/stout/include/stout/os.hpp a81086860a17bd1912e55051dd7bb98a20772b51 3rdparty/libprocess/3rdparty/stout/include/stout/os/freebsd.hpp ce4e4ccd1340e2cff18f5d1b6a9236809bdc69f1 3rdparty/libprocess/3rdparty/stout/include/stout/os/linux.hpp 33825280eb1404bcd89324f8ab5949f735b2d130 3rdparty/libprocess/3rdparty/stout/include/stout/os/osx.hpp a8010925c15fccc9bcd7c5d150ccdd9c98b8bb47 3rdparty/libprocess/3rdparty/stout/include/stout/os/pagesize.hpp f46da5577ecf4c336ff4d490f4f36ac0d3d058a9 3rdparty/libprocess/3rdparty/stout/include/stout/os/posix/pagesize.hpp f3ae69adf096d558e083615dfcf848c94e017e6e 3rdparty/libprocess/3rdparty/stout/include/stout/os/windows/pagesize.hpp 6112e9781a9d42f7ec1ae0832c0c877d1915b09b 3rdparty/libprocess/3rdparty/stout/include/stout/posix/os.hpp 52978f37a27c6db45b71fa1a1d41bb833a76e666 3rdparty/libprocess/3rdparty/stout/include/stout/windows/os.hpp 352ecc5fed99f52ef8ffce48291be720791b8b23 3rdparty/libprocess/cmake/Process3rdpartyConfigure.cmake ac75baf3c660f2bdda308f4eaa856f44d80f1ea1 3rdparty/libprocess/src/decoder.hpp 2c41ce9f00c857aa320b1d2cfa3b1048c316976a 3rdparty/libprocess/src/process.cpp afeddec20495bb9621c3e26b0d425c9419654739 3rdparty/libprocess/src/test-master.cpp 5026af32c6d72d3e031ebf265680ab7bbf937435 3rdparty/libprocess/src/test-slave.cpp 4516bdca66de5889c3163ff7d6890a9806dc4322 3rdparty/libprocess/src/tests/future_tests.cpp 383d260a4c0b17e9a0b5af002bb35070e3ec0b01 3rdparty/libprocess/src/tests/process_tests.cpp 3fce6fc41faaa7b6e8a2a957e85de3de973a51ba 3rdparty/libprocess/src/tests/ssl_tests.cpp 4d237815a03828b915e821c3af78132e2915c610 CHANGELOG d2e902f8295644c527964123e409be460c2a5789 bin/gdb-mesos-agent.sh.in 1e02c48c27b255139ab73e233abf577e402c5401 bin/lldb-mesos-agent.sh.in 480d6cec9ee8b6bb1b698961df6a555a38226a0a bin/mesos-agent-flags.sh.in bin/mesos-agent.sh.in adf79e0eb0c62236fb6095bd3d3539308dded975 bin/mesos-local-flags.sh.in 5b4553a808dc9f34a15390e69b2f85e95761ec53 bin/valgrind-mesos-agent.sh.in 08d9730e995d71236b224786ecec96f526ed033a configure.ac ae91a07e2bafd97566ac6e6873990302acad14c9 docs/configuration.md cd9733002a0940f44edd4e56593a0ca3fe9f77f5 docs/endpoints/master/create-volumes.md 5c86480b488e2722a12ab09b0a28399402410e2b docs/endpoints/master/destroy-volumes.md f75dd52bd6b75d35aa62dca54148a41cfec36ded docs/endpoints/master/reserve.md 8f38cc0f9c16c368ee3698ec0a6e7fd484110ebc docs/endpoints/master/unreserve.md 8e9a696a50f1821cfb11afae68cc4fb62b6f2a2c docs/fetcher.md fd6d8a78bd35c5644dceff7005dd7dfd9f5f2171 docs/persistent-volume.md e5f2836c8867d5221da9e4f89167850ef9dab8ec docs/reservation.md a400d19aec7a48d122ba1c9c23d38d792b8dbe6f docs/upgrades.md 4f0c86db4c8d51f70487c03b2e75c1a4189b67b9 include/mesos/hook.hpp 210ffba09f5acae34ca49b888a781f683777f9ca include/mesos/log/log.hpp 9c8634987181b1345005619e6d16d738903c49fc include/mesos/mesos.proto 87af4a06db8cc3889fe4d3b314206103f5ce5f2d include/mesos/state/in_memory.hpp 203274242854d482b01275597b249c58e6dfe2ad include/mesos/state/leveldb.hpp 6c732d38d68a3d60d28ce68a6340e8771d849c53 include/mesos/state/log.hpp ac0312fdb92c46bfa2a7b83e95e04fd1eaf87d03 include/mesos/state/protobuf.hpp cde7b771f3c787293fb909a4b982c47ee19f4057 include/mesos/state/state.hpp f2fddee4fa803fa0572f6194e7f5f45a56254c00 include/mesos/state/state.proto 7a7d68e6abc85c0ead04f5771e878d10348f44b8 include/mesos/state/storage.hpp 2bfa0478b0edf76d592cc9644da83d15a00bc68c include/mesos/state/zookeeper.hpp 8d8c19ce778f2499d86eb84008a61f211c528a3a include/mesos/v1/mesos.proto 34da0a1484dc2f71262d8b97484b8edaae35bb6c include/mesos/v1/scheduler.hpp 18e7a95f8342ea155f9e339945b05810b6bd82b5 include/mesos/zookeeper/authentication.hpp 1c8855a5ec60d8628887fddff73d460e9ba1e643 include/mesos/zookeeper/contender.hpp 348354ae1ab0a699f5d84b0e33b708cf06341789 include/mesos/zookeeper/detector.hpp 5c45f72b3fa540816b4f225004d9ae92158b4ef6 include/mesos/zookeeper/group.hpp d5ffca48bf8f0a5141a334304c5ec2d70e1ad333 include/mesos/zookeeper/url.hpp b67d32f5ca128eb2c65435865c75ce29f49ca2f3 include/mesos/zookeeper/watcher.hpp 7be9c0650a250a979a721b07261593dc5fa28d3b include/mesos/zookeeper/zookeeper.hpp site/source/blog/2016-04-12-mesos-0-26-1-and-more-released.md 792b0c9d6641ca76338ce3f86bc1b1a9296466c7 site/source/downloads.html.md 368d27a3a0fb7a6003dcebdcd6c5606efc4cde3e site/source/index.html.md 05fec157f0424adbe60ebd1cb31840537df767c5 site/source/layouts/layout.erb 2bf6967faad45644647b732be0fa3c410b9951c5 src/CMakeLists.txt aabb33dfd4b985fe5774f87bb63b4ec1ec853962 src/Makefile.am 5a2b4efa781752863d6751f98614fb78bece73ac src/cli/execute.cpp f70d9e1c4badb7d4342e90ce4d4f8114f27a7dff src/common/http.cpp ccf386898130c966903cb5aae4eaffbc9b63ca1f src/common/resources_utils.cpp 8e881a09500b0966b577e514077460f724868a8d src/deploy/mesos-agent-env.sh.template b3cee7df6b7344daf93a7f5e4508c92d053f1d4c src/deploy/mesos-deploy-env.sh.template 4cae9af15fa2f4af6115fdb61151b6b1458166b0 src/deploy/mesos-start-agents.sh.in ffb49cbac4f78dc7131615149c3c8672896658e4 src/deploy/mesos-start-cluster.sh.in a87a2b15be26f085a85fcabbdf44998e4ea21d21 src/deploy/mesos-stop-agents.sh.in 2451d6b772d7522eea2e310bc6493831963b849f src/deploy/mesos-stop-cluster.sh.in c5228268e3bde06a52c47139d98edb0faae269ea src/examples/balloon_executor.cpp 108ebd9afec5b2d592ffbe5c150a9271f1899f2c src/examples/dynamic_reservation_framework.cpp 81ad38682e6621a25ee04c9a86a501551006f716 src/examples/long_lived_framework.cpp c696ccb6b2ace6e047f6509b291dd14be240cf70 src/examples/test_hook_module.cpp 4b97f84204934d0e678786fd6cde38b89a6f8f48 src/examples/test_http_framework.cpp 8cc3107034d46cb6a2966835f509508223c6e674 src/hook/manager.hpp 528674e36639fe78137ba0a4bb004c99730e7a22 src/hook/manager.cpp 381807d582998043d73e9b8c9d3c1fddbcf73cf1 src/internal/devolve.cpp 4233246c6838f85189f1b4c7e66d2bc0a3bf5408 src/java/jni/org_apache_mesos_Log.cpp 341df13349d56d3c416107e8889ef543b6371eb0 src/java/jni/org_apache_mesos_state_AbstractState.cpp 728e93523e2bc9adb06bb62c4491ac3a29712961 src/java/jni/org_apache_mesos_state_LevelDBState.cpp b06956f5f16cdcbc242e7a0fce39ddb7f214994c src/java/jni/org_apache_mesos_state_LogState.cpp 2f2a571e0b4b791d8e35a77b72f2f38d4b1ef943 src/java/jni/org_apache_mesos_state_Variable.cpp 5a3805fef57e429b9cb105ba704d1af69b25b4d4 src/java/jni/org_apache_mesos_state_ZooKeeperState.cpp 5cce558b42f396aa4e99f750bab38d556bda9196 src/launcher/fetcher.cpp 47583eeaed53b3e7ed4db26fee7cdd2fae5e0c9d src/launcher/http_command_executor.cpp ad484e0e6f5067b6c166111c91b1ff1e8c05d9ac src/local/flags.hpp f0af0d251e004f305726e7e4fe7941c2d4081183 src/local/local.cpp 7de8a2423185e49dfa849d069938d3243b4f4956 src/log/log.hpp 6e7577342d1ba93833e3445daf0f1e67ccc21a09 src/log/log.cpp a52b35c5c79ccd80dcce3e5f01656081972423fb src/log/network.hpp 56c5dbb38eaeaa70735c47a2266b0dbebc42aa35 src/log/tool/benchmark.cpp 8981ea82735f3a1149aa777a62960582fea67a4d src/log/tool/replica.cpp e3661df858705132685b0c584c1adc716099bc30 src/logging/flags.cpp f64ad5eebc4a14ee07796b1a1c273397bdf46cdd src/master/constants.hpp e7e02a3675134273472ada968df03fa772e3b4a9 src/master/contender/contender.hpp PRE-CREATION src/master/contender/contender.cpp c11506f6310bf8b40c0acda661d976bb9dff38df src/master/contender/standalone.hpp 256a4bc184e8c2d9eb556dc606f0ce2dc547bec8 src/master/contender/standalone.cpp 5db792fe9efa31877dc2da9a965b333ab7222858 src/master/contender/zookeeper.hpp becb93fbc04031c133f42f44f3cf406a27262444 src/master/contender/zookeeper.cpp 61766ca08ec4bbeb5d2cc829545de537fdabb7dc src/master/detector/detector.hpp PRE-CREATION src/master/detector/detector.cpp 1ebe5af4219a7e1ec1cbf22b440dd3ecaad4b4a9 src/master/detector/standalone.hpp bbe3ce9b05fa3c321988e25a305507e22b938e4c src/master/detector/standalone.cpp 2b7c35c33777f0b01978fdf0a9875eda669bca24 src/master/detector/zookeeper.hpp 5b531e0f1fed7297bb73c5b02e8ef51d0c27ca38 src/master/detector/zookeeper.cpp a737d2403e480d14f1cd345b48af2833d2fa3284 src/master/flags.hpp e4cac1f8d688319c804e608b7229f458f779364a src/master/flags.cpp e6a239c15f52b381a83cc359d8b5a335a5fbd0af src/master/http.cpp a9cb99a92ff5a783e719df5e5cfb6e8301241df9 src/master/main.cpp 7bbc982192b96eed32674070e16575902af80c6d src/master/master.hpp 3e55114ee7866e06513071e86e15608099dae052 src/master/master.cpp 6dacf5fbd73771e5c31ffb0e8723cd2905dcefb3 src/master/registrar.hpp c39dd1b5430084e51376143b5441db346e85a153 src/master/registrar.cpp a509f45e094abdfcef71914058611ecaa5d6448e src/master/validation.hpp 7fa1b892c1aff7453658c31e534dc272d1759b17 src/master/validation.cpp 0cd118ee4f89f749a063f6ba7f419d5a220dc1d4 src/messages/state.proto 857a88873681c9cd7263d0063e8f17f08c5cd64b src/python/executor/src/mesos/executor/mesos_executor_driver_impl.cpp f2477d3d46a911423c338913e6f62532d19c72cf src/python/scheduler/src/mesos/scheduler/mesos_scheduler_driver_impl.cpp e1c91fe00c6548ee3087ea0b814ca600f1e5888b src/scaling/scaling_sched.py 011e353b12465076d96378cccbc5a0ff88231844 src/sched/sched.cpp 5393f0de655d03ac1a31b3144d4d764d4aeb56fb src/scheduler/scheduler.cpp c75e02c3c0de2527631adc88c080786f39a7fea6 src/slave/containerizer/docker.cpp 30f85a13f70fc2b1e04dbf0ca7f47bff806e4672 src/slave/containerizer/fetcher.hpp eeb663eac4c86e079228ac806018050d5d039e07 src/slave/containerizer/fetcher.cpp d5910ad570371ba54580be5bb94344a1de38d1f9 src/slave/containerizer/mesos/containerizer.cpp 1e1a36903f4377497bb72b69e4ead63675d453c0 src/slave/containerizer/mesos/isolators/docker/volume/isolator.hpp 786f917c0ec04b6839bbd524fa7c8de3729f9bdb src/slave/containerizer/mesos/isolators/docker/volume/isolator.cpp 0ad473dc3bd45e122fba55a670e1a893e61c977a src/slave/containerizer/mesos/isolators/network/cni/cni.hpp a06bb89a7a79a62949a48274df806f9f95da09e7 src/slave/containerizer/mesos/isolators/network/cni/cni.cpp 6e3fe118fb63d1ce7d5b01a6ac32f8f3a1369cfb src/slave/containerizer/mesos/isolators/network/port_mapping.cpp ad792def2bb3a1614d21ca28d858e400d2e3ede1 src/slave/containerizer/mesos/launch.cpp e22106b014c871e2184a15c2ab154a0674874e47 src/slave/containerizer/mesos/main.cpp ed0c6cd0721b9f486be056d2ae62cbccf53bc834 src/slave/flags.hpp ee520acc459564fe68272950948fc80c5e24513a src/slave/flags.cpp 10d2974bd2b6e79255fc894979607f0d2d00c315 src/slave/http.cpp 3908e33ed5b233387790276f6f5d884452087d2c src/slave/main.cpp 38bd00584dd9c6a872398678b2288edeed1cd2a4 src/slave/slave.hpp f78c1b4e4d5378ef7223c6eb3ea45491c30fb4c1 src/slave/slave.cpp d82dec2b10d496065013eb4ad6a35dc054b72553 src/slave/state.cpp 04c3d42040f186507a0e484a3ee616f1b1a77ea8 src/state/in_memory.cpp c50f46dba45199ca4f3060039ad094a93a8a2e18 src/state/leveldb.cpp 60c18dd46a489e024e2b96be9739187eeaf8a282 src/state/log.cpp 2a55913c4a246ef09b73eb8205826e88c1963171 src/state/zookeeper.cpp 1596637faabbce99a1e8b699b684a9c4ad722940 src/tests/balloon_framework_test.sh a242f6cb9ca1850e5fef90e0938f41044bdaddbf src/tests/cluster.hpp 96ec52af16776e91200aa755c7847f56e33d71f4 src/tests/cluster.cpp 3e5fdf6b32a0d99d3ca83743386232d38471e34f src/tests/command_executor_tests.cpp 07e5eb4d7c2ace2b6714fbe02f29d41663152556 src/tests/containerizer/cgroups_tests.cpp 4cb3d6103ca1120a35aea4714ed3bb9662ed0410 src/tests/containerizer/docker_containerizer_tests.cpp f43165388f29513ab8be6594ab6647e8f9eb5a93 src/tests/containerizer/filesystem_isolator_tests.cpp 29d313051865761306029f331eb36684c3252ffb src/tests/containerizer/memory_test_helper.cpp 21c718d7ca207286d3865b60142ec863ada4dc73 src/tests/containerizer/nvidia_gpu_isolator_tests.cpp b1e64b2fc5518463cd14e119f89e3cd298286052 src/tests/fetcher_cache_tests.cpp 9ffcd2375f1203bd3d7c5d0cc898e955d5cb124e src/tests/fetcher_tests.cpp 23a8dc5f4402c5613744753284aabbe3d09bf797 src/tests/flags.hpp ae232b1a087edfaf678bd1c67bc509efd6c740d8 src/tests/group_tests.cpp 83fca117f687386509b63c7b43c1c8345ba9611c src/tests/hierarchical_allocator_tests.cpp 53a759ce0ebea87cc564a22cb2d34e54870f782b src/tests/hook_tests.cpp 60d52c5849ba555f6f3070883d87aadf105f05b0 src/tests/log_tests.cpp 4cd6bc359d481c065d9647b3d5f0154cb5cb2503 src/tests/master_allocator_tests.cpp bb96b256d99254f2334a93d2f031ccefbed71845 src/tests/master_contender_detector_tests.cpp ef4786f92f7d48cdd1cdaca7e2167a4113d6a5a9 src/tests/master_maintenance_tests.cpp 971c4473acbec5206614f46f51b06b3460595d50 src/tests/master_quota_tests.cpp 9ce7e2e481706c74f080d54b6f58d57874a27e64 src/tests/master_slave_reconciliation_tests.cpp 7c41215251403500bb53f26e845e5c34afc19f1e src/tests/master_tests.cpp 8e00753fcbcd0cae1d08aad387b08aa17c7f63ad src/tests/mesos.hpp e4b63d41d883807ac39846799468b80e88c84e0b src/tests/mesos.cpp b5937af7713e1ee2af475518b3e968b2defa8beb src/tests/oversubscription_tests.cpp f73f7bee34774092bc1fd48b11c0869afc60375a src/tests/paths_tests.cpp 0671ee25b484cacf08c9a20ee6eba88e6f14fa97 src/tests/persistent_volume_endpoints_tests.cpp a57461d881b2bf0175f83b50b0a46167acd5bd3e src/tests/registrar_tests.cpp f707a04f03dd33f71071b4f2b45f86529cf65fff src/tests/reservation_endpoints_tests.cpp f014290ed9f279df4c774aeb7ce7bd38fd1cc854 src/tests/scheduler_http_api_tests.cpp c12205f90e4f2da2c6ad7a0ea75777601eb0ef13 src/tests/scheduler_tests.cpp d9cc3fde0caeadb16164e68ed66be098fd3ada7c src/tests/slave_recovery_tests.cpp 8ad63224e0fdd203cb8dbfbc2d2484e3ce52a10c src/tests/slave_tests.cpp ee58488b0b927c7c5833add4718941539663e6d2 src/tests/sorter_tests.cpp eb207a36c18198588cd8a98b3860a66c2ff7a641 src/tests/state_tests.cpp e9f6e850373b0ba16bd84745926efb0e35574f97 src/tests/zookeeper_test_server.hpp 4ca9aca11f2d2834d30d07a99bd9d4a5d0616dd8 src/tests/zookeeper_tests.cpp 0a360c6a12133e9208638db64e12b27a5328a9d2 src/tests/zookeeper_url_tests.cpp 2b6345fd65addcae7d2ed5cc47f1f7396017fb7e src/zookeeper/authentication.cpp 0fd99b019a5b4f65d2094eee637351f7ff2206a9 src/zookeeper/contender.cpp 4b1cc654cb96d3fd87c5f36c93a8ee1e170bea77 src/zookeeper/detector.cpp f1def68740e4941a5daa3a889bc14278d7ea7366 src/zookeeper/group.cpp 01680899778e554af70b176db82498ca92b51b60 src/zookeeper/zookeeper.cpp 5b136bbc294be83730235e342bda788035b00d59 support/generate-endpoint-help.py 70221febe9b7009f243b8faa8979ea10a8bd724e support/hooks/commit-msg 755309e70581835d01f53c1910b37b6cd3ea98ca support/test-upgrade.py 49932006f781072ee517863f1d77232e0cf80552 Diff: https://reviews.apache.org/r/46168/diff/ Testing ------- Three tests were added. In fetcher_tests.cpp, CustomFilenameSubdirectory tests that the fetcher creates a file in a specified subdirectory in the sandbox, and AbsoluteCustomSubdirectoryFails tests that a custom filename with an absolute path is rejected. In fetcher_cache_tests.cpp, CachedCustomFilenameWithSubdirectory tests that the same behavior holds when the URI is fetched from the cache. Thanks, Michael Browning