-----------------------------------------------------------
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

Reply via email to