Dear experts,
when connecting to alien (i.e. CCDB) from within O2 workflows I recently get a crash on mac, as it seems related to pyROOT. See example below. Any idea how to fix this?
Thanks a lot in advance!
Cheers
Markus
[24471:qc-task-EMC-BCTask]: [17:01:19][INFO] Correctly handshaken websocket connection.
[24465:ctf-reader]: Info in <TJAlienConnectionManager>: Opening connection to JCentral. Please wait
[24465:ctf-reader]: input_line_129:1:64: error: redefinition of 'is_equal'
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_equal(const C1& c1, const C2& c2) { return (bool)(c1 == c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: input_line_125:1:64: note: previous definition is here
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_equal(const C1& c1, const C2& c2) { return (bool)(c1 == c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: input_line_130:1:64: error: redefinition of 'is_not_equal'
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_not_equal(const C1& c1, const C2& c2) { return (bool)(c1 != c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: input_line_126:1:64: note: previous definition is here
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_not_equal(const C1& c1, const C2& c2) { return (bool)(c1 != c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: input_line_133:1:64: error: redefinition of 'is_equal'
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_equal(const C1& c1, const C2& c2) { return (bool)(c1 == c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: input_line_125:1:64: note: previous definition is here
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_equal(const C1& c1, const C2& c2) { return (bool)(c1 == c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: input_line_134:1:64: error: redefinition of 'is_not_equal'
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_not_equal(const C1& c1, const C2& c2) { return (bool)(c1 != c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: input_line_126:1:64: note: previous definition is here
[24465:ctf-reader]: namespace __cppyy_internal { template<class C1, class C2> bool is_not_equal(const C1& c1, const C2& c2) { return (bool)(c1 != c2); } }
[24465:ctf-reader]: ^
[24465:ctf-reader]: *** Program crashed (Segmentation fault, FPE, BUS, ABRT, KILL, Unhandled Exception, ...)
[24465:ctf-reader]: Backtrace by DPL:
[24465:ctf-reader]: SEGMENTATION FAULT
[24465:ctf-reader]: 2 libCore.6.28.04.so 0x0000000149632f6c: TClassTable::AddAlternate(char const*, char const*)
[24465:ctf-reader]: 4 dyld 0x00000001ab1c01d8: invocation function for block in dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const::$_0::operator()() const
[24465:ctf-reader]: 5 dyld 0x00000001ab201c60: invocation function for block in dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const
[24465:ctf-reader]: 6 dyld 0x00000001ab1f51a4: invocation function for block in dyld3::MachOFile::forEachSection(void (dyld3::MachOFile::SectionInfo const&, bool, bool&) block_pointer) const
[24465:ctf-reader]: 7 dyld 0x00000001ab1a02d8: dyld3::MachOFile::forEachLoadCommand(Diagnostics&, void (load_command const*, bool&) block_pointer) const
[24465:ctf-reader]: 8 dyld 0x00000001ab1f41cc: dyld3::MachOFile::forEachSection(void (dyld3::MachOFile::SectionInfo const&, bool, bool&) block_pointer) const
[24465:ctf-reader]: 9 dyld 0x00000001ab1f6cfc: dyld3::MachOFile::forEachInitializerPointerSection(Diagnostics&, void (unsigned int, unsigned int, bool&) block_pointer) const
[24465:ctf-reader]: 10 dyld 0x00000001ab201904: dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const
[24465:ctf-reader]: 11 dyld 0x00000001ab1bc85c: dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const
[24465:ctf-reader]: 12 dyld 0x00000001ab1bcc10: dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, dyld3::Array<dyld4::Loader const*>&) const
[24465:ctf-reader]: 13 dyld 0x00000001ab1c0264: dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::RuntimeState&) const::$_1::operator()() const
[24465:ctf-reader]: 14 dyld 0x00000001ab1bcd90: dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::RuntimeState&) const
[24465:ctf-reader]: 15 dyld 0x00000001ab1dad58: dyld4::APIs::dlopen_from(char const*, int, void*)
[24465:ctf-reader]: 22 libJAliEnROOT.dylib 0x000000029fef6c14: TJAlienConnectionManager::MakeWebsocketConnection(TJAlienCredentialsObject const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, int)
[24465:ctf-reader]: 23 libJAliEnROOT.dylib 0x000000029fef699c: TJAlienConnectionManager::ConnectJCentral(TJAlienCredentialsObject const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>)
[24465:ctf-reader]: 24 libJAliEnROOT.dylib 0x000000029fef627c: TJAlienConnectionManager::CreateConnection()
[24465:ctf-reader]: 25 libJAliEnROOT.dylib 0x000000029fed5574: TJAlien::Connect()
[24465:ctf-reader]: 26 libJAliEnROOT.dylib 0x000000029fed5358: TJAlien::TJAlien(char const*, char const*, char const*, char const*)
[24465:ctf-reader]: 28 libCling.6.28.04.so 0x00000002980fb690: TClingCallFunc::exec(void*, void*)
[24465:ctf-reader]: 29 libCling.6.28.04.so 0x00000002980fc1fc: TClingCallFunc::exec_with_valref_return(void*, cling::Value*)
[24465:ctf-reader]: 30 libCling.6.28.04.so 0x00000002980fcb64: long TClingCallFunc::ExecT<long>(void*)
[24465:ctf-reader]: 31 libCore.6.28.04.so 0x000000014969bd8c: TMethodCall::Execute(void*, long&)
[24465:ctf-reader]: 32 libNet.6.28.04.so 0x000000014527012c: long TPluginHandler::ExecPluginImpl<char const*, char const*, char const*, char const*>(char const* const&, char const* const&, char const* const&, char const* const&)
[24465:ctf-reader]: 33 libNet.6.28.04.so 0x0000000145270038: TGrid::Connect(char const*, char const*, char const*, char const*)
[24465:ctf-reader]: 34 libO2CommonUtils.dylib 0x0000000145a243f4: o2::utils::FileFetcher::addInputFile(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)
[24465:ctf-reader]: 35 libO2CommonUtils.dylib 0x0000000145a23a30: o2::utils::FileFetcher::processInput(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>> const&)
[24465:ctf-reader]: 36 libO2CommonUtils.dylib 0x0000000145a22538: o2::utils::FileFetcher::processInput(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)
[24465:ctf-reader]: 37 libO2CommonUtils.dylib 0x0000000145a21108: o2::utils::FileFetcher::FileFetcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)
[24465:ctf-reader]: 38 libO2CommonUtils.dylib 0x0000000145a22708: o2::utils::FileFetcher::FileFetcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)
[24465:ctf-reader]: 39 libO2CTFWorkflow.dylib 0x0000000104e1db1c: std::__1::__unique_if<o2::utils::FileFetcher>::__unique_single std::__1::make_unique<o2::utils::FileFetcher, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&)
[24465:ctf-reader]: 40 libO2CTFWorkflow.dylib 0x0000000104e1d3b8: o2::ctf::CTFReaderSpec::init(o2::framework::InitContext&)
[24465:ctf-reader]: 41 libO2CTFWorkflow.dylib 0x0000000104e564d4: o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)::operator()(o2::framework::InitContext&) const
[24465:ctf-reader]: 42 libO2CTFWorkflow.dylib 0x0000000104e562dc: decltype(static_cast<o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)&>(fp)(static_cast<o2::ctf::CTFReaderInp const&>(fp0))) std::__1::__invoke<o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)&, o2::framework::InitContext&>(o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)&, o2::ctf::CTFReaderInp const&)
[24465:ctf-reader]: 43 libO2CTFWorkflow.dylib 0x0000000104e5624c: std::__1::function<void (o2::framework::ProcessingContext&)> std::__1::__invoke_void_return_wrapper<std::__1::function<void (o2::framework::ProcessingContext&)>, false>::__call<o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)&, o2::framework::InitContext&>(o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)&, o2::framework::InitContext&)
[24465:ctf-reader]: 44 libO2CTFWorkflow.dylib 0x0000000104e561e8: std::__1::__function::__alloc_func<o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&), std::__1::allocator<o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)>, std::__1::function<void (o2::framework::ProcessingContext&)> (o2::framework::InitContext&)>::operator()(o2::framework::InitContext&)
[24465:ctf-reader]: 45 libO2CTFWorkflow.dylib 0x0000000104e54d44: std::__1::__function::__func<o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&), std::__1::allocator<o2::framework::AlgorithmSpec o2::framework::adaptFromTask<o2::ctf::CTFReaderSpec, o2::ctf::CTFReaderInp const&>(o2::ctf::CTFReaderInp const&)::'lambda'(o2::framework::InitContext&)>, std::__1::function<void (o2::framework::ProcessingContext&)> (o2::framework::InitContext&)>::operator()(o2::framework::InitContext&)
[24465:ctf-reader]: 46 o2-ctf-reader-workflow 0x000000010446d070: std::__1::__function::__value_func<std::__1::function<void (o2::framework::ProcessingContext&)> (o2::framework::InitContext&)>::operator()(o2::framework::InitContext&) const
[24465:ctf-reader]: 47 o2-ctf-reader-workflow 0x0000000104466650: std::__1::function<std::__1::function<void (o2::framework::ProcessingContext&)> (o2::framework::InitContext&)>::operator()(o2::framework::InitContext&) const
[24465:ctf-reader]: 48 libO2Framework.dylib 0x000000014a92f12c: o2::framework::DataProcessingDevice::Init()
[24465:ctf-reader]: 49 libfairmq.1.8.2.dylib 0x0000000146045638: fair::mq::Device::InitWrapper()
[24465:ctf-reader]: 50 libfairmq.1.8.2.dylib 0x000000014605612c: std::__1::__function::__func<fair::mq::Device::Device(fair::mq::ProgOptions*, fair::mq::tools::Version)::$_2, std::__1::allocator<fair::mq::Device::Device(fair::mq::ProgOptions*, fair::mq::tools::Version)::$_2>, void (fair::mq::State)>::operator()(fair::mq::State&&)
[24465:ctf-reader]: 51 libfairmq.1.8.2.dylib 0x000000014613ced4: boost::detail::function::void_function_obj_invoker1<std::__1::function<void (fair::mq::State)>, void, fair::mq::State>::invoke(boost::detail::function::function_buffer&, fair::mq::State)
[24465:ctf-reader]: 52 libfairmq.1.8.2.dylib 0x000000014612b0a8: boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<boost::signals2::detail::void_type, fair::mq::State>, std::__1::__list_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::__1::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<void (fair::mq::State), boost::function<void (fair::mq::State)>>, boost::signals2::mutex>>, void*>, boost::signals2::detail::connection_body<std::__1::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<void (fair::mq::State), boost::function<void (fair::mq::State)>>, boost::signals2::mutex>>::dereference() const
[24465:ctf-reader]: 53 libfairmq.1.8.2.dylib 0x000000014612a850: boost::signals2::detail::signal_impl<void (fair::mq::State), boost::signals2::optional_last_value<void>, int, std::__1::less<int>, boost::function<void (fair::mq::State)>, boost::function<void (boost::signals2::connection const&, fair::mq::State)>, boost::signals2::mutex>::operator()(fair::mq::State)
[24465:ctf-reader]: 54 libfairmq.1.8.2.dylib 0x000000014612a2ec: fair::mq::fsm::Machine_::ProcessWork()
[24465:ctf-reader]: 55 libfairmq.1.8.2.dylib 0x0000000146129f44: fair::mq::StateMachine::ProcessWork()
[24465:ctf-reader]: 56 libfairmq.1.8.2.dylib 0x000000014605ad10: fair::mq::DeviceRunner::Run()
[24465:ctf-reader]: 57 libO2Framework.dylib 0x000000014af57460: doChild(int, char**, o2::framework::ServiceRegistry&, o2::framework::RunningWorkflowInfo const&, o2::framework::RunningDeviceRef, o2::framework::DriverConfig const&, o2::framework::ProcessingPolicies, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, uv_loop_s*)
[24465:ctf-reader]: 58 libO2Framework.dylib 0x000000014af60408: runStateMachine(std::__1::vector<o2::framework::DataProcessorSpec, std::__1::allocator<o2::framework::DataProcessorSpec>> const&, WorkflowInfo const&, std::__1::vector<o2::framework::DataProcessorInfo, std::__1::allocator<o2::framework::DataProcessorInfo>> const&, o2::framework::CommandInfo const&, o2::framework::DriverControl&, o2::framework::DriverInfo&, o2::framework::DriverConfig&, std::__1::vector<o2::framework::DeviceMetricsInfo, std::__1::allocator<o2::framework::DeviceMetricsInfo>>&, boost::program_options::variables_map&, std::__1::vector<o2::framework::ServiceSpec, std::__1::allocator<o2::framework::ServiceSpec>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>)
[24465:ctf-reader]: 59 libO2Framework.dylib 0x000000014af76644: doMain(int, char**, std::__1::vector<o2::framework::DataProcessorSpec, std::__1::allocator<o2::framework::DataProcessorSpec>> const&, std::__1::vector<o2::framework::ChannelConfigurationPolicy, std::__1::allocator<o2::framework::ChannelConfigurationPolicy>> const&, std::__1::vector<o2::framework::CompletionPolicy, std::__1::allocator<o2::framework::CompletionPolicy>> const&, std::__1::vector<o2::framework::DispatchPolicy, std::__1::allocator<o2::framework::DispatchPolicy>> const&, std::__1::vector<o2::framework::ResourcePolicy, std::__1::allocator<o2::framework::ResourcePolicy>> const&, std::__1::vector<o2::framework::CallbacksPolicy, std::__1::allocator<o2::framework::CallbacksPolicy>> const&, std::__1::vector<o2::framework::SendingPolicy, std::__1::allocator<o2::framework::SendingPolicy>> const&, std::__1::vector<o2::framework::ConfigParamSpec, std::__1::allocator<o2::framework::ConfigParamSpec>> const&, o2::framework::ConfigContext&)
[24465:ctf-reader]: 60 o2-ctf-reader-workflow 0x000000010442b8a0: mainNoCatch(int, char**)
[24465:ctf-reader]: Backtrace complete.
[ERROR] pid 24465 (ctf-reader) crashed with or was killed with exit code 1
[24464:internal-dpl-clock]: [17:01:25][WARN] Value for total_rate_in_mb_s is too small, setting to INT_MIN
^C[INFO] QUIT_REQUESTED