Closed jagerman closed 1 year ago
A debug build currently fails to run in service node mode with a NullMutex assertion failure:
[Current thread is 1 (Thread 0x7f98401ff640 (LWP 3147722))] (gdb) bt #0 0x00007f984bc5a83c in ?? () from /lib/x86_64-linux-gnu/libc.so.6 #1 0x00007f984bc0ea52 in raise () from /lib/x86_64-linux-gnu/libc.so.6 #2 0x00007f984bbf9469 in abort () from /lib/x86_64-linux-gnu/libc.so.6 #3 0x0000556b40e1dfb8 in llarp::util::NullMutex::lock (this=0x7f9849c45158) at ../llarp/util/thread/threading.hpp:63 #4 0x0000556b40cfd258 in llarp::util::NullLock::NullLock (this=<optimized out>, mtx=..., this=<optimized out>, mtx=...) at ../llarp/util/thread/threading.hpp:82 #5 0x0000556b412b4223 in llarp::NodeDB::NumLoaded (this=0x7f9849c450d0) at ../llarp/nodedb.cpp:239 #6 0x0000556b40e2326c in llarp::Router::TooFewPeers (this=0x7f9849cd8010) at ../llarp/router/router.cpp:500 #7 0x0000556b40e232a2 in llarp::Router::OxendErrorState[abi:cxx11]() const (this=0x7f9849cd8010) at ../llarp/router/router.cpp:508 #8 0x0000556b40eb8e9a in operator() (__closure=0x7f9847612040) at ../llarp/rpc/lokid_rpc_client.cpp:187 #9 0x0000556b40ed7bf4 in std::__invoke_impl<void, llarp::rpc::LokidRpcClient::Connected()::<lambda()>&>(std::__invoke_other, struct {...} &) (__f=...) at /usr/include/c++/10/bits/invoke.h:60 #10 0x0000556b40ece4b6 in std::__invoke_r<void, llarp::rpc::LokidRpcClient::Connected()::<lambda()>&>(struct {...} &) (__fn=...) at /usr/include/c++/10/bits/invoke.h:110 #11 0x0000556b40ec45ab in std::_Function_handler<void(), llarp::rpc::LokidRpcClient::Connected()::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/10/bits/std_function.h:291 #12 0x0000556b40dd2878 in std::function<void ()>::operator()() const (this=0x7f9849c003f0) at /usr/include/c++/10/bits/std_function.h:622 #13 0x00007f984c5e960e in oxenmq::Batch<void>::set_value(oxenmq::job_result<void, void>&, std::function<void ()>&) () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #14 0x00007f984c5e919d in oxenmq::Batch<void>::run_job(int) () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #15 0x00007f984c618fe0 in oxenmq::OxenMQ::worker_thread(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>) () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #16 0x00007f984c622dc1 in void std::__invoke_impl<void, void (oxenmq::OxenMQ::*)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*, unsigned int, std::nullopt_t, decltype(nullptr)>(std::__invoke_memfun_deref, void (oxenmq::OxenMQ::*&&)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*&&, unsigned int&&, std::nullopt_t&&, decltype(nullptr)&&) () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #17 0x00007f984c622c3a in std::__invoke_result<void (oxenmq::OxenMQ::*)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*, unsigned int, std::nullopt_t, decltype(nullptr)>::type std::__invoke<void (oxenmq::OxenMQ::*)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*, unsigned int, std::nullopt_t, decltype(nullptr)>(void (oxenmq::OxenMQ::*&&)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*&&, unsigned int&&, std::nullopt_t&&, decltype(nullptr)&&) () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #18 0x00007f984c622af5 in void std::thread::_Invoker<std::tuple<void (oxenmq::OxenMQ::*)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*, unsigned int, std::nullopt_t, decltype(nullptr)> >::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul>(std::_Index_tuple<0ul, 1ul, 2ul, 3ul, 4ul>) () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #19 0x00007f984c622a5a in std::thread::_Invoker<std::tuple<void (oxenmq::OxenMQ::*)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*, unsigned int, std::nullopt_t, decltype(nullptr)> >::operator()() () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #20 0x00007f984c622a3e in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (oxenmq::OxenMQ::*)(unsigned int, std::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::function<void ()>), oxenmq::OxenMQ*, unsigned int, std::nullopt_t, decltype(nullptr)> > >::_M_run() () from /lib/x86_64-linux-gnu/liboxenmq.so.1.2.14 #21 0x00007f984bf9b3d3 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6 #22 0x00007f984bc58b27 in ?? () from /lib/x86_64-linux-gnu/libc.so.6 #23 0x00007f984bcdb78c in ?? () from /lib/x86_64-linux-gnu/libc.so.6
last tag or on dev branch?
dev branch
(untested on stable)
i have a fix, making PR
A debug build currently fails to run in service node mode with a NullMutex assertion failure: