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