> On 一月 12, 2016, 2:33 a.m., Guangya Liu wrote:
> > Greg, I think that the document of reservation.md should also be updated. 
> > 
> > BTW: Did you test your patch? I did some test as this and mesos-master core 
> > dump.
> > 
> > curl -i -d slaveId="4c737d19-e3b2-41c0-b4d0-ffc60190b8eb-S0" -d 
> > resources='[ { "name": "cpus",  "type": "SCALAR", "scalar": { "value": 3 }, 
> > "role": "ads", "reservation": { "principal": "p1" } }, {  "name": "mem", 
> > "type": "SCALAR",  "scalar": { "value": 3000 }, "role": "ads", 
> > "reservation": { "principal": "p1" } }  ]'  -X POST 
> > http://9.110.49.27:5050/master/reserve
> > curl: (52) Empty reply from server
> > 
> > --
> > I0112 10:26:35.901185 333451264 http.cpp:315] HTTP POST for /master/reserve 
> > from 9.110.49.27:50492 with User-Agent='curl/7.43.0'
> > Assertion failed: (isSome()), function get, file 
> > ../../3rdparty/libprocess/3rdparty/stout/include/stout/option.hpp, line 108.
> > *** Aborted at 1452565595 (unix time) try "date -d @1452565595" if you are 
> > using GNU date ***
> > PC: @     0x7fff8ca15286 __pthread_kill
> > *** SIGABRT (@0x7fff8ca15286) received by PID 43187 (TID 0x113e01000) stack 
> > trace: ***
> >     @     0x7fff89a0cf1a _sigtramp
> >     @     0x7f917bd08fd0 (unknown)
> >     @     0x7fff867139ab abort
> >     @     0x7fff866dba91 __assert_rtn
> >     @        0x10c517947 Option<>::get()
> >     @        0x10cf6c0f9 
> > mesos::internal::master::validation::operation::validate()
> >     @        0x10ca5c0c2 mesos::internal::master::Master::Http::reserve()
> >     @        0x10cba6634 
> > mesos::internal::master::Master::initialize()::$_9::operator()()
> >     @        0x10cba65d4 
> > _ZNSt3__128__invoke_void_return_wrapperIN7process6FutureINS1_4http8ResponseEEEE6__callIJRZN5mesos8internal6master6Master10initializeEvE3$_9RKNS3_7RequestERK6OptionINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEEEEES5_DpOT_
> >     @        0x10cba64a3 std::__1::__function::__func<>::operator()()
> >     @        0x10eacfaa2 std::__1::function<>::operator()()
> >     @        0x10ea0b399 process::ProcessBase::visit()::$_3::operator()()
> >     @        0x10ea0e9f1 
> > _ZZZNK7process9_DeferredIZNS_11ProcessBase5visitERKNS_9HttpEventEE3$_3EcvNSt3__18functionIFvT_EEEIRKNS_6FutureI6OptionINS_4http14authentication20AuthenticationResultEEEEEEvENKUlSL_E_clESL_ENKUlvE_clEv
> >     @        0x10ea0e9bd 
> > _ZNSt3__128__invoke_void_return_wrapperIvE6__callIJRZZNK7process9_DeferredIZNS3_11ProcessBase5visitERKNS3_9HttpEventEE3$_3EcvNS_8functionIFvT_EEEIRKNS3_6FutureI6OptionINS3_4http14authentication20AuthenticationResultEEEEEEvENKUlSO_E_clESO_EUlvE_EEEvDpOT_
> >     @        0x10ea0e6fc 
> > _ZNSt3__110__function6__funcIZZNK7process9_DeferredIZNS2_11ProcessBase5visitERKNS2_9HttpEventEE3$_3EcvNS_8functionIFvT_EEEIRKNS2_6FutureI6OptionINS2_4http14authentication20AuthenticationResultEEEEEEvENKUlSN_E_clESN_EUlvE_NS_9allocatorISP_EEFvvEEclEv
> >     @        0x10c510371 std::__1::function<>::operator()()
> >     @        0x10c56f999 
> > _ZZN7process8dispatchERKNS_4UPIDERKNSt3__18functionIFvvEEEENKUlPNS_11ProcessBaseEE_clESA_
> >     @        0x10c56f970 
> > _ZNSt3__128__invoke_void_return_wrapperIvE6__callIJRZN7process8dispatchERKNS3_4UPIDERKNS_8functionIFvvEEEEUlPNS3_11ProcessBaseEE_SD_EEEvDpOT_
> >     @        0x10c56f70c 
> > _ZNSt3__110__function6__funcIZN7process8dispatchERKNS2_4UPIDERKNS_8functionIFvvEEEEUlPNS2_11ProcessBaseEE_NS_9allocatorISD_EEFvSC_EEclEOSC_
> >     @        0x10ea2529f std::__1::function<>::operator()()
> >     @        0x10e9ff2ff process::ProcessBase::visit()
> >     @        0x10ea531be process::DispatchEvent::visit()
> >     @        0x10c4efd71 process::ProcessBase::serve()
> >     @        0x10e9fc091 process::ProcessManager::resume()
> >     @        0x10ea0784f 
> > process::ProcessManager::init_threads()::$_1::operator()()
> >     @        0x10ea074d2 
> > _ZNSt3__114__thread_proxyINS_5tupleIJNS_6__bindIZN7process14ProcessManager12init_threadsEvE3$_1JNS_17reference_wrapperIKNS_6atomicIbEEEEEEEEEEEEPvSD_
> >     @     0x7fff8c6e105a _pthread_body
> >     @     0x7fff8c6e0fd7 _pthread_start
> >     @     0x7fff8c6de3ed thread_start
> 
> Greg Mann wrote:
>     Yep, I tested as noted in the "Testing Done" section, but I didn't 
> manually apply an operation as you did - thanks a bunch for doing this 
> Guangya, as you found a mistake that I made! In the parent patch of this one 
> (https://reviews.apache.org/r/42164/) you'll find the fix, as well as a 
> couple new test cases that apply reserve/unreserve operations without a 
> principal. The tests produced a segfault before the fix, and succeeded after 
> the fix.
>     
>     Thanks again!!!
>     
>     I noticed in your `curl` command that you included a principal "p1" in 
> the resources you were attempting to reserve even though no authentication 
> headers were included in the request. Note that this will produce an error 
> given the new changes I introduced, since if no principal is provided with 
> the operation, the `ReservationInfo` should contain an empty principal as 
> well.

Thanks Greg, the new patch works!


- Guangya


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/42165/#review113913
-----------------------------------------------------------


On 一月 11, 2016, 10:40 p.m., Greg Mann wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/42165/
> -----------------------------------------------------------
> 
> (Updated 一月 11, 2016, 10:40 p.m.)
> 
> 
> Review request for mesos, Alexander Rojas, Michael Park, and Neil Conway.
> 
> 
> Bugs: MESOS-3940
>     https://issues.apache.org/jira/browse/MESOS-3940
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Removed `hasPrincipal` parameter from unreserve validation.
> 
> 
> Diffs
> -----
> 
>   src/master/http.cpp bcafc7aff89659a68352f3876ce6042f8b34bd5d 
>   src/master/master.cpp 2d9b7f9540574aa3ef9e5af3b2b8922dffeebac8 
>   src/master/validation.hpp 380b40279faf180a6f401a5e28280b601dbc648c 
>   src/master/validation.cpp 6a43bce5b7df6a9d939245c4726d060fa19eb305 
>   src/tests/master_validation_tests.cpp 
> fbf8fadbc04a7cbc60ee6091e0224339389b400f 
> 
> Diff: https://reviews.apache.org/r/42165/diff/
> 
> 
> Testing
> -------
> 
> Several instances of the relevant validation function were altered in the 
> master validation tests.
> 
> `make check` was used to test on both OSX and Ubuntu 14.04
> 
> 
> Thanks,
> 
> Greg Mann
> 
>

Reply via email to