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


Ship it!




Nice catch!

- Joseph Wu


On Jan. 12, 2017, 3:52 p.m., Aaron Wood wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/55480/
> -----------------------------------------------------------
> 
> (Updated Jan. 12, 2017, 3:52 p.m.)
> 
> 
> Review request for mesos and Anand Mazumdar.
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> This fixes the segfault that occurs when an executor sets a UUID that's not a 
> valid v4 UUID and sends it off to the agent:
> 
> ```
> ABORT: (../../3rdparty/stout/include/stout/try.hpp:77): Try::get() but state 
> == ERROR: Not a valid UUID
> *** Aborted at 1484262968 (unix time) try "date -d @1484262968" if you are 
> using GNU date ***
> PC: @     0x7efeb6101428 (unknown)
> *** SIGABRT (@0x36b7) received by PID 14007 (TID 0x7efeabd29700) from PID 
> 14007; stack trace: ***
>     @     0x7efeb64a6390 (unknown)
>     @     0x7efeb6101428 (unknown)
>     @     0x7efeb610302a (unknown)
>     @     0x560df739fa6e _Abort()
>     @     0x560df739fa9c _Abort()
>     @     0x7efebb53a5ad Try<>::get()
>     @     0x7efebb5363d6 Try<>::get()
>     @     0x7efebbd84809 
> mesos::internal::slave::validation::executor::call::validate()
>     @     0x7efebbb59b36 mesos::internal::slave::Slave::Http::executor()
>     @     0x7efebbc773b8 
> _ZZN5mesos8internal5slave5Slave10initializeEvENKUlRKN7process4http7RequestEE1_clES7_
>     @     0x7efebbcb5808 
> _ZNSt17_Function_handlerIFN7process6FutureINS0_4http8ResponseEEERKNS2_7RequestEEZN5mesos8internal5slave5Slave10initializeEvEUlS7_E1_E9_M_invokeERKSt9_Any_dataS7_
>     @     0x7efebbfb2aea std::function<>::operator()()
>     @     0x7efebcb158b8 
> _ZZZN7process11ProcessBase6_visitERKNS0_12HttpEndpointERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_5OwnedINS_4http7RequestEEEENKUlRK6OptionINSD_14authentication20AuthenticationResultEEE0_clESN_ENKUlbE1_clEb
>     @     0x7efebcb1a10a 
> _ZZZNK7process9_DeferredIZZNS_11ProcessBase6_visitERKNS1_12HttpEndpointERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_5OwnedINS_4http7RequestEEEENKUlRK6OptionINSE_14authentication20AuthenticationResultEEE0_clESO_EUlbE1_EcvSt8functionIFT_T0_EEINS_6FutureINSE_8ResponseEEERKbEEvENKUlS12_E_clES12_ENKUlvE_clEv
>     @     0x7efebcb1c5f8 
> _ZNSt17_Function_handlerIFN7process6FutureINS0_4http8ResponseEEEvEZZNKS0_9_DeferredIZZNS0_11ProcessBase6_visitERKNS7_12HttpEndpointERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_5OwnedINS2_7RequestEEEENKUlRK6OptionINS2_14authentication20AuthenticationResultEEE0_clEST_EUlbE1_EcvSt8functionIFT_T0_EEIS4_RKbEEvENKUlS14_E_clES14_EUlvE_E9_M_invokeERKSt9_Any_data
>     @     0x7efebb5ce8ca std::function<>::operator()()
>     @     0x7efebb5c4b27 
> _ZZN7process8internal8DispatchINS_6FutureINS_4http8ResponseEEEEclIRSt8functionIFS5_vEEEES5_RKNS_4UPIDEOT_ENKUlPNS_11ProcessBaseEE_clESI_
>     @     0x7efebb5d4e1e 
> _ZNSt17_Function_handlerIFvPN7process11ProcessBaseEEZNS0_8internal8DispatchINS0_6FutureINS0_4http8ResponseEEEEclIRSt8functionIFS9_vEEEES9_RKNS0_4UPIDEOT_EUlS2_E_E9_M_invokeERKSt9_Any_dataOS2_
>     @     0x7efebcb30baf std::function<>::operator()()
>     @     0x7efebcb13fd6 process::ProcessBase::visit()
>     @     0x7efebcb1f3c8 process::DispatchEvent::visit()
>     @     0x7efebb3ab2ea process::ProcessBase::serve()
>     @     0x7efebcb0fe8a process::ProcessManager::resume()
>     @     0x7efebcb0c5a3 
> _ZZN7process14ProcessManager12init_threadsEvENKUt_clEv
>     @     0x7efebcb1ea34 
> _ZNSt12_Bind_simpleIFZN7process14ProcessManager12init_threadsEvEUt_vEE9_M_invokeIJEEEvSt12_Index_tupleIJXspT_EEE
>     @     0x7efebcb1e98a 
> _ZNSt12_Bind_simpleIFZN7process14ProcessManager12init_threadsEvEUt_vEEclEv
>     @     0x7efebcb1e91a 
> _ZNSt6thread5_ImplISt12_Bind_simpleIFZN7process14ProcessManager12init_threadsEvEUt_vEEE6_M_runEv
>     @     0x7efeb6980c80 (unknown)
>     @     0x7efeb649c6ba start_thread
>     @     0x7efeb61d282d (unknown)
> Aborted (core dumped)
> ```
> 
> 
> Diffs
> -----
> 
>   src/slave/validation.cpp abd9b1248 
> 
> Diff: https://reviews.apache.org/r/55480/diff/
> 
> 
> Testing
> -------
> 
> Verified by making sure no segfault occurs when rebuilding Mesos with this 
> fix and pointing our framework at it. Our framework is currently not 
> generating v4 UUIDs which was exposing the issue.
> 
> 
> Thanks,
> 
> Aaron Wood
> 
>

Reply via email to