[ 
https://issues.apache.org/jira/browse/MESOS-2584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14395520#comment-14395520
 ] 

Till Toenshoff commented on MESOS-2584:
---------------------------------------

After fixing the AuthenticationTest with the above patch, the next one failing 
is {{MesosContainerizerIsolatorPreparationTest.ScriptSucceeds}}. In that case 
however it seems we hit a different problem with a similar result (failing 
dynamic_cast in dispatch);

{noformat}
[ RUN      ] MesosContainerizerIsolatorPreparationTest.ScriptSucceeds
Assertion failed: (t != NULL), function operator(), file 
../../3rdparty/libprocess/include/process/c++11/dispatch.hpp, line 239.
Process 15170 stopped
* thread #2: tid = 0x56e2de, 0x00007fff85921286 
libsystem_kernel.dylib`__pthread_kill + 10, stop reason = signal SIGABRT
    frame #0: 0x00007fff85921286 libsystem_kernel.dylib`__pthread_kill + 10
libsystem_kernel.dylib`__pthread_kill:
->  0x7fff85921286 <+10>: jae    0x7fff85921290            ; <+20>
    0x7fff85921288 <+12>: movq   %rax, %rdi
    0x7fff8592128b <+15>: jmp    0x7fff8591cc53            ; cerror_nocancel
    0x7fff85921290 <+20>: retq


(lldb) th b
* thread #2: tid = 0x56e2de, 0x00007fff85921286 
libsystem_kernel.dylib`__pthread_kill + 10, stop reason = signal SIGABRT
  * frame #0: 0x00007fff85921286 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff89efa42f libsystem_pthread.dylib`pthread_kill + 90
    frame #2: 0x00007fff8a4fbb53 libsystem_c.dylib`abort + 129
    frame #3: 0x00007fff8a4c3c39 libsystem_c.dylib`__assert_rtn + 321
    frame #4: 0x0000000103b26acb 
libmesos-0.23.0.dylib`operator(this=0x000000010a701db8, 
process=0x000000010935cca0) + 267 at dispatch.hpp:239
    frame #5: 0x0000000103b2691f 
libmesos-0.23.0.dylib`std::__1::__function::__func<process::Future<Option<mesos::CommandInfo>
 > process::dispatch<Option<mesos::CommandInfo>, mesos::slave::IsolatorProcess, 
mesos::ContainerID const&, mesos::ExecutorInfo const&, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > const&, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > > const&, 
mesos::ContainerID, mesos::ExecutorInfo, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> >, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > >(process::PID<mesos::slave::IsolatorProcess> 
const&, process::Future<Option<mesos::CommandInfo> > 
(mesos::slave::IsolatorProcess::*)(mesos::ContainerID const&, 
mesos::ExecutorInfo const&, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > const&, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > const&), mesos::ContainerID, mesos::ExecutorInfo, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> >, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > 
>)::'lambda'(process::ProcessBase*), 
std::__1::allocator<process::Future<Option<mesos::CommandInfo> > 
process::dispatch<Option<mesos::CommandInfo>, mesos::slave::IsolatorProcess, 
mesos::ContainerID const&, mesos::ExecutorInfo const&, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > const&, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > > const&, 
mesos::ContainerID, mesos::ExecutorInfo, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> >, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > >(process::PID<mesos::slave::IsolatorProcess> 
const&, process::Future<Option<mesos::CommandInfo> > 
(mesos::slave::IsolatorProcess::*)(mesos::ContainerID const&, 
mesos::ExecutorInfo const&, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > const&, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > const&), mesos::ContainerID, mesos::ExecutorInfo, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> >, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > 
>)::'lambda'(process::ProcessBase*)>, void 
(process::ProcessBase*)>::operator()(process::ProcessBase*&&) [inlined] 
decltype(this=0x000000010a701db8, __f=0x000000010a701db8, 
__args=0x000000010a592bb8)(std::__1::forward<process::ProcessBase*>(fp0))) 
std::__1::__invoke<process::Future<Option<mesos::CommandInfo> > 
process::dispatch<Option<mesos::CommandInfo>, mesos::slave::IsolatorProcess, 
mesos::ContainerID const&, mesos::ExecutorInfo const&, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > const&, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > > const&, 
mesos::ContainerID, mesos::ExecutorInfo, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> >, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > >(process::PID<mesos::slave::IsolatorProcess> 
const&, process::Future<Option<mesos::CommandInfo> > 
(mesos::slave::IsolatorProcess::*)(mesos::ContainerID const&, 
mesos::ExecutorInfo const&, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > const&, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > const&), mesos::ContainerID, mesos::ExecutorInfo, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> >, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > 
>)::'lambda'(process::ProcessBase*)&, 
process::ProcessBase*>(Option<mesos::CommandInfo>&&, process::ProcessBase*&&) + 
95 at __functional_base:413
    frame #6: 0x0000000103b268ff 
libmesos-0.23.0.dylib`std::__1::__function::__func<process::Future<Option<mesos::CommandInfo>
 > process::dispatch<Option<mesos::CommandInfo>, mesos::slave::IsolatorProcess, 
mesos::ContainerID const&, mesos::ExecutorInfo const&, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > const&, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > > const&, 
mesos::ContainerID, mesos::ExecutorInfo, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> >, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > >(process::PID<mesos::slave::IsolatorProcess> 
const&, process::Future<Option<mesos::CommandInfo> > 
(mesos::slave::IsolatorProcess::*)(mesos::ContainerID const&, 
mesos::ExecutorInfo const&, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > const&, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > const&), mesos::ContainerID, mesos::ExecutorInfo, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> >, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > 
>)::'lambda'(process::ProcessBase*), 
std::__1::allocator<process::Future<Option<mesos::CommandInfo> > 
process::dispatch<Option<mesos::CommandInfo>, mesos::slave::IsolatorProcess, 
mesos::ContainerID const&, mesos::ExecutorInfo const&, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > const&, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > > const&, 
mesos::ContainerID, mesos::ExecutorInfo, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> >, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > >(process::PID<mesos::slave::IsolatorProcess> 
const&, process::Future<Option<mesos::CommandInfo> > 
(mesos::slave::IsolatorProcess::*)(mesos::ContainerID const&, 
mesos::ExecutorInfo const&, std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > const&, 
Option<std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> > > const&), mesos::ContainerID, mesos::ExecutorInfo, 
std::__1::basic_string<char, std::__1::char_traits<char>, 
std::__1::allocator<char> >, Option<std::__1::basic_string<char, 
std::__1::char_traits<char>, std::__1::allocator<char> > 
>)::'lambda'(process::ProcessBase*)>, void 
(process::ProcessBase*)>::operator(this=0x000000010a701db0, 
__arg=0x000000010a592bb8)(process::ProcessBase*&&) + 63 at functional:1370
    frame #7: 0x000000010466d2ab libmesos-0.23.0.dylib`std::__1::function<void 
(process::ProcessBase*)>::operator(this=0x000000010a701c40, 
__arg=0x000000010935cca0)(process::ProcessBase*) const + 171 at functional:1755
    frame #8: 0x0000000104654abf 
libmesos-0.23.0.dylib`process::ProcessBase::visit(this=0x000000010935cca0, 
event=0x000000010a701c90) + 47 at process.cpp:2695
    frame #9: 0x00000001046dedee 
libmesos-0.23.0.dylib`process::DispatchEvent::visit(this=0x000000010a701c90, 
visitor=0x000000010935cca0) const + 30 at event.hpp:141
    frame #10: 0x00000001002aeaa1 
mesos-tests`process::ProcessBase::serve(this=0x000000010935cca0, 
event=0x000000010a701c90) + 33 at process.hpp:39
    frame #11: 0x000000010463e2fe 
libmesos-0.23.0.dylib`process::ProcessManager::resume(this=0x0000000109700a00, 
process=0x000000010935cca0) + 1918 at process.cpp:2169
    frame #12: 0x000000010463da2e 
libmesos-0.23.0.dylib`process::schedule(arg=0x0000000000000000) + 142 at 
process.cpp:607
    frame #13: 0x00007fff89ef8268 libsystem_pthread.dylib`_pthread_body + 131
    frame #14: 0x00007fff89ef81e5 libsystem_pthread.dylib`_pthread_start + 176
    frame #15: 0x00007fff89ef641d libsystem_pthread.dylib`thread_start + 13


(lldb) fr s 4
frame #4: 0x0000000103b26acb 
libmesos-0.23.0.dylib`operator(this=0x000000010a701db8, 
process=0x000000010935cca0) + 267 at dispatch.hpp:239
   236      return dispatch(process->self(), method, ENUM_PARAMS(N, a));        
\
   237    }
   238
-> 239    REPEAT_FROM_TO(1, 11, TEMPLATE, _) // Args A0 -> A9.
   240  #undef TEMPLATE
   241
   242


(lldb) fr v
error: libprocess.a(libprocess_la-process.o) DWARF DIE at 0x00006e85 for class 
'Process<process::Route::RouteProcess>' has a base class 'process::ProcessBase' 
that is a forward declaration, not a complete definition.
Please file a bug against the compiler and include the preprocessed output for 
/Users/till/Development/mesos-private/build/3rdparty/libprocess/../../../3rdparty/libprocess/src/process.cpp
(std::__1::__compressed_pair<process::(anonymous class), 
std::__1::allocator<process::(anonymous class)> > *) this = 0x000000010a701db8
(process::(anonymous class) &) __f = 0x000000010a701db8: {
  promise = std::__1::shared_ptr<process::Promise<Option<mesos::CommandInfo> > 
>::element_type @ 0x000000010a701b40 {
    __ptr_ = 0x000000010a701b40
  }
  method = 0x0000000000000019
  a0 = {
    _unknown_fields_ = {
      fields_ = 0x0000000000000000
    }
    value_ = "test_container"
    _cached_size_ = 0
    _has_bits_ = ([0] = 1)
  }
  a1 = {
    _unknown_fields_ = {
      fields_ = 0x0000000000000000
    }
    executor_id_ = 0x000000010a701eb0
    framework_id_ = 0x0000000000000000
    command_ = 0x000000010a701ef0
    container_ = 0x0000000000000000
    resources_ = {
      google::protobuf::internal::RepeatedPtrFieldBase = {
        elements_ = 0x0000000000000000
        current_size_ = 0
        allocated_size_ = 0
        total_size_ = 0
      }
    }
    name_ = ""
    source_ = ""
    data_ = ""
    discovery_ = 0x0000000000000000
    _cached_size_ = 0
    _has_bits_ = ([0] = 5)
  }
  a2 = 
"/private/tmp/MesosContainerizerIsolatorPreparationTest_ScriptSucceeds_zsCOvO"
  a3 = (state = NONE, t = "")
}
(process::ProcessBase *&&) __args = 0x000000010a592bb8: {
  &__args = 0x000000010935c9d0
}
{noformat}

Note:  
{noformat}
error: libprocess.a(libprocess_la-process.o) DWARF DIE at 0x00006e85 for class 
'Process<process::Route::RouteProcess>' has a base class 'process::ProcessBase' 
that is a forward declaration, not a complete definition.
Please file a bug against the compiler and include the preprocessed output for 
/Users/till/Development/mesos-private/build/3rdparty/libprocess/../../../3rdparty/libprocess/src/process.cpp
{noformat} 


> AuthenticationTest.RetryFrameworkAuthentication breaks with clang-3.4.2
> -----------------------------------------------------------------------
>
>                 Key: MESOS-2584
>                 URL: https://issues.apache.org/jira/browse/MESOS-2584
>             Project: Mesos
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 0.22.0
>         Environment: OS X 10.10.2 with clang-3.4.2
>            Reporter: Michael Park
>            Assignee: Till Toenshoff
>
> When built with {{clang-3.4.2}}, {{make check}} dies with the following error 
> message.
> {code}
> [ RUN      ] AuthenticationTest.RetryFrameworkAuthentication
> Assertion failed: (t != NULL), function operator(), file 
> ../../../3rdparty/libprocess/include/process/c++11/dispatch.hpp, line 77.
> *** Aborted at 1427879902 (unix time) try "date -d @1427879902" if you are 
> using GNU date ***
> PC: @     0x7fff92600286 __pthread_kill
> *** SIGABRT (@0x7fff92600286) received by PID 5475 (TID 0x10d329000) stack 
> trace: ***
>     @     0x7fff8d56ff1a _sigtramp
>     @        0x10d328020 (unknown)
>     @     0x7fff8e7acb53 abort
>     @     0x7fff8e774c39 __assert_rtn
>     @        0x103d941c8 
> _ZZN7process8dispatchIN5mesos8internal8cram_md527CRAMMD5AuthenticateeProcessEEEvRKNS_3PIDIT_EEMS6_FvvEENKUlPNS_11ProcessBaseEE_clESD_
>     @        0x103d9401f 
> _ZNSt3__110__function6__funcIZN7process8dispatchIN5mesos8internal8cram_md527CRAMMD5AuthenticateeProcessEEEvRKNS2_3PIDIT_EEMS9_FvvEEUlPNS2_11ProcessBaseEE_NS_9allocatorISH_EEFvSG_EEclEOSG_
>     @        0x10817856b std::__1::function<>::operator()()
>     @        0x10815fd7f process::ProcessBase::visit()
>     @        0x1081ea0ae process::DispatchEvent::visit()
>     @        0x1067f7051 process::ProcessBase::serve()
>     @        0x1081495be process::ProcessManager::resume()
>     @        0x108148cee process::schedule()
>     @     0x7fff9951b268 _pthread_body
>     @     0x7fff9951b1e5 _pthread_start
>     @     0x7fff9951941d thread_start
> make[3]: *** [check-local] Abort trap: 6
> make[2]: *** [check-am] Error 2
> make[1]: *** [check] Error 2
> make: *** [check-recursive] Error 1
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to