Created
April 2, 2020 19:50
-
-
Save wezrule/eaf9b7ffd5ad3c2958c7e64448af0e78 to your computer and use it in GitHub Desktop.
TSAN start_time
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
WARNING: ThreadSanitizer: data race (pid=27432) | |
Write of size 8 at 0x7b240007eb20 by thread T39: | |
#0 nano::bulk_pull_client::received_block(boost::system::error_code const&, unsigned long, nano::block_type) /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_bulk_pull.cpp:244 (nano_node+0x91ca43) | |
#1 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_bulk_pull.cpp:185 (nano_node+0x921d90) | |
#2 std::_Function_handler<void (boost::system::error_code const&, unsigned long), nano::bulk_pull_client::received_type()::$_7>::_M_invoke(std::_Any_data const&, boost::system::error_code const&, unsigned long&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:316 (nano_node+0x921b61) | |
#3 std::function<void (boost::system::error_code const&, unsigned long)>::operator()(boost::system::error_code const&, unsigned long) const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:706 (nano_node+0x64d164) | |
#4 operator() /home/wezrule/nano/raiblocks/nano/node/socket.cpp:61 (nano_node+0xa01e24) | |
#5 std::result_of<{lambda(boost::system::error_code const&, unsigned long)#1} (boost::system::error_code const&, unsigned long)>::type boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >::operator()<boost::system::error_code const&, unsigned long>((std::result_of&&)...) /usr/local/include/boost/asio/bind_executor.hpp:414 (nano_node+0xa00971) | |
#6 boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >::operator()(boost::system::error_code const&, unsigned long, int) /usr/local/include/boost/asio/impl/read.hpp:373 (nano_node+0xa00768) | |
#7 boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>::operator()() /usr/local/include/boost/asio/detail/bind_handler.hpp:164 (nano_node+0xa01b47) | |
#8 void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0xa01af5) | |
#9 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::strand<boost::asio::io_context::executor_type> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::strand<boost::asio::io_context::executor_type>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xa01ac5) | |
#10 void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::strand<boost::asio::io_context::executor_type> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::strand<boost::asio::io_context::executor_type> >*) /usr/local/include/boost/asio/impl/read.hpp:428 (nano_node+0xa01a92) | |
#11 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xa01a46) | |
#12 void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long>(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::detail::binder2<boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long>*) /usr/local/include/boost/asio/detail/bind_handler.hpp:207 (nano_node+0xa019ce) | |
#13 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > > >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xa018d6) | |
#14 boost::asio::detail::executor_op<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, std::allocator<void>, boost::asio::detail::scheduler_operation>::do_complete(void*, std::allocator<void>*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/executor_op.hpp:70 (nano_node+0xa01c3e) | |
#15 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#16 boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>::operator()() /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:90 (nano_node+0x648c48) | |
#17 void boost::asio::asio_handler_invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0x648b75) | |
#18 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x648a0b) | |
#19 void boost::asio::io_context::executor_type::dispatch<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, std::allocator<void> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/impl/io_context.hpp:265 (nano_node+0x648808) | |
#20 void boost::asio::detail::strand_executor_service::dispatch<boost::asio::io_context::executor_type const, boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, std::allocator<void> >(std::shared_ptr<boost::asio::detail::strand_executor_service::strand_impl> const&, boost::asio::io_context::executor_type const&, boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&&, std::allocator<void> const&) /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:128 (nano_node+0xa017c8) | |
#21 void boost::asio::strand<boost::asio::io_context::executor_type>::dispatch<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, std::allocator<void> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/strand.hpp:193 (nano_node+0xa016b9) | |
#22 void boost::asio::detail::handler_work<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::asio::detail::io_object_executor<boost::asio::executor>, boost::asio::io_context::executor_type>::complete<boost::asio::detail::binder2<boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long>&, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_work.hpp:72 (nano_node+0xa013e5) | |
#23 boost::asio::detail::reactive_socket_recv_op<boost::asio::mutable_buffers_1, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::asio::detail::io_object_executor<boost::asio::executor> >::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/reactive_socket_recv_op.hpp:123 (nano_node+0xa01100) | |
#24 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#25 boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:447 (nano_node+0x4d991d) | |
#26 boost::asio::detail::scheduler::run(boost::system::error_code&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:200 (nano_node+0x4d9498) | |
#27 boost::asio::io_context::run() /usr/local/include/boost/asio/impl/io_context.ipp:63 (nano_node+0xaf5165) | |
#28 operator() /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:124 (nano_node+0xaf4cfa) | |
#29 boost::detail::thread_data<nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0xaf4cac) | |
#30 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Previous read of size 8 at 0x7b240007eb20 by thread T44 (mutexes: write M415): | |
#0 std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::time_since_epoch() const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/chrono:640 (nano_node+0x4f3045) | |
#1 std::common_type<std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::type std::chrono::operator-<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/chrono:754 (nano_node+0x50ab7b) | |
#2 nano::bootstrap_client::elapsed_seconds() const /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:41 (nano_node+0x92d2d9) | |
#3 nano::bootstrap_connections::populate_connections(bool) /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:220 (nano_node+0x92e123) | |
#4 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:307 (nano_node+0x9308d6) | |
#5 std::_Function_handler<void (), nano::bootstrap_connections::populate_connections(bool)::$_2>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:316 (nano_node+0x9306cd) | |
#6 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:706 (nano_node+0x64a388) | |
#7 void boost::asio::asio_handler_invoke<std::function<void ()> >(std::function<void ()>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0xaa9a05) | |
#8 void boost_asio_handler_invoke_helpers::invoke<std::function<void ()>, std::function<void ()> >(std::function<void ()>&, std::function<void ()>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xaa99cb) | |
#9 void boost::asio::detail::handler_work<std::function<void ()>, boost::asio::system_executor, boost::asio::system_executor>::complete<std::function<void ()> >(std::function<void ()>&, std::function<void ()>&) /usr/local/include/boost/asio/detail/handler_work.hpp:100 (nano_node+0xaa988e) | |
#10 boost::asio::detail::completion_handler<std::function<void ()> >::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/completion_handler.hpp:70 (nano_node+0xaa96e5) | |
#11 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#12 boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:447 (nano_node+0x4d991d) | |
#13 boost::asio::detail::scheduler::run(boost::system::error_code&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:200 (nano_node+0x4d9498) | |
#14 boost::asio::io_context::run() /usr/local/include/boost/asio/impl/io_context.ipp:63 (nano_node+0xaf5165) | |
#15 operator() /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:124 (nano_node+0xaf4cfa) | |
#16 boost::detail::thread_data<nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0xaf4cac) | |
#17 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Location is heap block of size 136 at 0x7b240007eab0 allocated by thread T36: | |
#0 operator new(unsigned long) ??:? (nano_node+0x4cc9f6) | |
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:111 (nano_node+0x936e0c) | |
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:436 (nano_node+0x936d60) | |
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/allocated_ptr.h:104 (nano_node+0x936ad0) | |
#4 __shared_count<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, const std::shared_ptr<nano::bootstrap_connections> &, std::shared_ptr<nano::transport::channel_tcp>, const std::shared_ptr<nano::socket> &> /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr_base.h:635 (nano_node+0x936952) | |
#5 __shared_ptr<std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, const std::shared_ptr<nano::bootstrap_connections> &, std::shared_ptr<nano::transport::channel_tcp>, const std::shared_ptr<nano::socket> &> /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr_base.h:1294 (nano_node+0x9368a7) | |
#6 shared_ptr<std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, const std::shared_ptr<nano::bootstrap_connections> &, std::shared_ptr<nano::transport::channel_tcp>, const std::shared_ptr<nano::socket> &> /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr.h:344 (nano_node+0x9367f1) | |
#7 std::shared_ptr<nano::bootstrap_client> std::allocate_shared<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>, std::shared_ptr<nano::socket> const&>(std::allocator<nano::bootstrap_client> const&, std::shared_ptr<nano::node>&&, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>&&, std::shared_ptr<nano::socket> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr.h:690 (nano_node+0x936711) | |
#8 std::shared_ptr<nano::bootstrap_client> std::make_shared<nano::bootstrap_client, std::shared_ptr<nano::node>, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>, std::shared_ptr<nano::socket> const&>(std::shared_ptr<nano::node>&&, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>&&, std::shared_ptr<nano::socket> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr.h:706 (nano_node+0x9365d6) | |
#9 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:154 (nano_node+0x9302f6) | |
#10 std::_Function_handler<void (boost::system::error_code const&), nano::bootstrap_connections::connect_client(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, bool)::$_1>::_M_invoke(std::_Any_data const&, boost::system::error_code const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:316 (nano_node+0x92fed1) | |
#11 std::function<void (boost::system::error_code const&)>::operator()(boost::system::error_code const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:706 (nano_node+0xa0f46e) | |
#12 operator() /home/wezrule/nano/raiblocks/nano/node/socket.cpp:41 (nano_node+0x9febdb) | |
#13 std::result_of<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0 (boost::system::error_code const&)>::type boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >::operator()<boost::system::error_code const&>(boost::system::error_code const&) /usr/local/include/boost/asio/bind_executor.hpp:414 (nano_node+0x9feb72) | |
#14 boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>::operator()() /usr/local/include/boost/asio/detail/bind_handler.hpp:65 (nano_node+0x9feb29) | |
#15 void boost::asio::asio_handler_invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0x9feac5) | |
#16 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> > >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x9fea95) | |
#17 void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>*) /usr/local/include/boost/asio/detail/bind_handler.hpp:106 (nano_node+0x9fea2e) | |
#18 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x9fe936) | |
#19 boost::asio::detail::executor_op<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, std::allocator<void>, boost::asio::detail::scheduler_operation>::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/executor_op.hpp:70 (nano_node+0x9fecee) | |
#20 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#21 boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>::operator()() /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:90 (nano_node+0x648c48) | |
#22 void boost::asio::asio_handler_invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0x648b75) | |
#23 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x648a0b) | |
#24 void boost::asio::io_context::executor_type::dispatch<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, std::allocator<void> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/impl/io_context.hpp:265 (nano_node+0x648808) | |
#25 void boost::asio::detail::strand_executor_service::dispatch<boost::asio::io_context::executor_type const, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, std::allocator<void> >(std::shared_ptr<boost::asio::detail::strand_executor_service::strand_impl> const&, boost::asio::io_context::executor_type const&, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&&, std::allocator<void> const&) /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:128 (nano_node+0x9fe898) | |
#26 void boost::asio::strand<boost::asio::io_context::executor_type>::dispatch<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, std::allocator<void> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/strand.hpp:193 (nano_node+0x9fe789) | |
#27 void boost::asio::detail::handler_work<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::asio::detail::io_object_executor<boost::asio::executor>, boost::asio::strand<boost::asio::io_context::executor_type> >::complete<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_work.hpp:72 (nano_node+0x9ff475) | |
#28 boost::asio::detail::reactive_socket_connect_op<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::asio::detail::io_object_executor<boost::asio::executor> >::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/reactive_socket_connect_op.hpp:102 (nano_node+0x9ff23c) | |
#29 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#30 boost::asio::detail::epoll_reactor::descriptor_state::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/impl/epoll_reactor.ipp:776 (nano_node+0x63efa2) | |
#31 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#32 boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:447 (nano_node+0x4d991d) | |
#33 boost::asio::detail::scheduler::run(boost::system::error_code&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:200 (nano_node+0x4d9498) | |
#34 boost::asio::io_context::run() /usr/local/include/boost/asio/impl/io_context.ipp:63 (nano_node+0xaf5165) | |
#35 operator() /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:124 (nano_node+0xaf4cfa) | |
#36 boost::detail::thread_data<nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0xaf4cac) | |
#37 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Mutex M415 (0x7b4c000048e8) created at: | |
#0 pthread_mutex_lock ??:? (nano_node+0x447d77) | |
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/x86_64-linux-gnu/c++/7.5.0/bits/gthr-default.h:748 (nano_node+0x5527a3) | |
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_mutex.h:103 (nano_node+0x55cea5) | |
#3 nano::unique_lock<std::mutex, void>::lock_impl() /home/wezrule/nano/raiblocks/nano/lib/locks.cpp:74 (nano_node+0xad350c) | |
#4 unique_lock /home/wezrule/nano/raiblocks/nano/lib/locks.cpp:66 (nano_node+0xad347a) | |
#5 nano::bootstrap_connections::populate_connections(bool) /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:209 (nano_node+0x92dfb8) | |
#6 nano::bootstrap_connections::start_populate_connections() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:317 (nano_node+0x92ee14) | |
#7 nano::bootstrap_connections::run() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:463 (nano_node+0x92f9b7) | |
#8 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap.cpp:21 (nano_node+0x597252) | |
#9 boost::detail::thread_data<nano::bootstrap_initiator::bootstrap_initiator(nano::node&)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0x5971fc) | |
#10 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Thread T39 'I/O' (tid=27475, running) created by main thread at: | |
#0 pthread_create ??:? (nano_node+0x43b2a6) | |
#1 boost::thread::start_thread_noexcept(boost::thread_attributes const&) ??:? (nano_node+0xd111b5) | |
#2 thread<(lambda at /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120:32)> /usr/local/include/boost/thread/detail/thread.hpp:277 (nano_node+0xaf4a38) | |
#3 void __gnu_cxx::new_allocator<boost::thread>::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:136 (nano_node+0xaf49c8) | |
#4 void std::allocator_traits<std::allocator<boost::thread> >::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(std::allocator<boost::thread>&, boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:475 (nano_node+0xaf46f8) | |
#5 boost::thread& std::vector<boost::thread, std::allocator<boost::thread> >::emplace_back<boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/vector.tcc:100 (nano_node+0xaf44e0) | |
#6 thread_runner /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120 (nano_node+0xaf4422) | |
#7 std::_MakeUniq<nano::thread_runner>::__single_object std::make_unique<nano::thread_runner, boost::asio::io_context&, unsigned int&>(boost::asio::io_context&, unsigned int&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:821 (nano_node+0x4d2c73) | |
#8 nano_daemon::daemon::run(boost::filesystem::path const&, nano::node_flags const&) /home/wezrule/nano/raiblocks/nano/nano_node/daemon.cpp:148 (nano_node+0x4d0115) | |
#9 main /home/wezrule/nano/raiblocks/nano/nano_node/entry.cpp:158 (nano_node+0x4f9cea) | |
Thread T44 'I/O' (tid=27480, running) created by main thread at: | |
#0 pthread_create ??:? (nano_node+0x43b2a6) | |
#1 boost::thread::start_thread_noexcept(boost::thread_attributes const&) ??:? (nano_node+0xd111b5) | |
#2 thread<(lambda at /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120:32)> /usr/local/include/boost/thread/detail/thread.hpp:277 (nano_node+0xaf4a38) | |
#3 void __gnu_cxx::new_allocator<boost::thread>::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:136 (nano_node+0xaf49c8) | |
#4 void std::allocator_traits<std::allocator<boost::thread> >::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(std::allocator<boost::thread>&, boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:475 (nano_node+0xaf46f8) | |
#5 boost::thread& std::vector<boost::thread, std::allocator<boost::thread> >::emplace_back<boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/vector.tcc:100 (nano_node+0xaf44e0) | |
#6 thread_runner /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120 (nano_node+0xaf4422) | |
#7 std::_MakeUniq<nano::thread_runner>::__single_object std::make_unique<nano::thread_runner, boost::asio::io_context&, unsigned int&>(boost::asio::io_context&, unsigned int&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:821 (nano_node+0x4d2c73) | |
#8 nano_daemon::daemon::run(boost::filesystem::path const&, nano::node_flags const&) /home/wezrule/nano/raiblocks/nano/nano_node/daemon.cpp:148 (nano_node+0x4d0115) | |
#9 main /home/wezrule/nano/raiblocks/nano/nano_node/entry.cpp:158 (nano_node+0x4f9cea) | |
Thread T36 'I/O' (tid=27472, running) created by main thread at: | |
#0 pthread_create ??:? (nano_node+0x43b2a6) | |
#1 boost::thread::start_thread_noexcept(boost::thread_attributes const&) ??:? (nano_node+0xd111b5) | |
#2 thread<(lambda at /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120:32)> /usr/local/include/boost/thread/detail/thread.hpp:277 (nano_node+0xaf4a38) | |
#3 void __gnu_cxx::new_allocator<boost::thread>::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:136 (nano_node+0xaf49c8) | |
#4 void std::allocator_traits<std::allocator<boost::thread> >::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(std::allocator<boost::thread>&, boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:475 (nano_node+0xaf46f8) | |
#5 boost::thread& std::vector<boost::thread, std::allocator<boost::thread> >::emplace_back<boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/vector.tcc:100 (nano_node+0xaf44e0) | |
#6 thread_runner /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120 (nano_node+0xaf4422) | |
#7 std::_MakeUniq<nano::thread_runner>::__single_object std::make_unique<nano::thread_runner, boost::asio::io_context&, unsigned int&>(boost::asio::io_context&, unsigned int&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:821 (nano_node+0x4d2c73) | |
#8 nano_daemon::daemon::run(boost::filesystem::path const&, nano::node_flags const&) /home/wezrule/nano/raiblocks/nano/nano_node/daemon.cpp:148 (nano_node+0x4d0115) | |
#9 main /home/wezrule/nano/raiblocks/nano/nano_node/entry.cpp:158 (nano_node+0x4f9cea) | |
SUMMARY: ThreadSanitizer: data race /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_bulk_pull.cpp:244 in nano::bulk_pull_client::received_block(boost::system::error_code const&, unsigned long, nano::block_type) | |
================== | |
================== | |
WARNING: ThreadSanitizer: data race (pid=27432) | |
Read of size 8 at 0x7b240007eb20 by thread T37 (mutexes: write M415): | |
#0 std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::time_since_epoch() const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/chrono:640 (nano_node+0x4f3045) | |
#1 std::common_type<std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::type std::chrono::operator-<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/chrono:754 (nano_node+0x50ab7b) | |
#2 nano::bootstrap_client::elapsed_seconds() const /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:41 (nano_node+0x92d2d9) | |
#3 nano::bootstrap_connections::populate_connections(bool) /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:220 (nano_node+0x92e123) | |
#4 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:307 (nano_node+0x9308d6) | |
#5 std::_Function_handler<void (), nano::bootstrap_connections::populate_connections(bool)::$_2>::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:316 (nano_node+0x9306cd) | |
#6 std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:706 (nano_node+0x64a388) | |
#7 void boost::asio::asio_handler_invoke<std::function<void ()> >(std::function<void ()>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0xaa9a05) | |
#8 void boost_asio_handler_invoke_helpers::invoke<std::function<void ()>, std::function<void ()> >(std::function<void ()>&, std::function<void ()>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xaa99cb) | |
#9 void boost::asio::detail::handler_work<std::function<void ()>, boost::asio::system_executor, boost::asio::system_executor>::complete<std::function<void ()> >(std::function<void ()>&, std::function<void ()>&) /usr/local/include/boost/asio/detail/handler_work.hpp:100 (nano_node+0xaa988e) | |
#10 boost::asio::detail::completion_handler<std::function<void ()> >::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/completion_handler.hpp:70 (nano_node+0xaa96e5) | |
#11 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#12 boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:447 (nano_node+0x4d991d) | |
#13 boost::asio::detail::scheduler::run(boost::system::error_code&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:200 (nano_node+0x4d9498) | |
#14 boost::asio::io_context::run() /usr/local/include/boost/asio/impl/io_context.ipp:63 (nano_node+0xaf5165) | |
#15 operator() /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:124 (nano_node+0xaf4cfa) | |
#16 boost::detail::thread_data<nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0xaf4cac) | |
#17 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Previous write of size 8 at 0x7b240007eb20 by thread T39: | |
#0 nano::bulk_pull_client::received_block(boost::system::error_code const&, unsigned long, nano::block_type) /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_bulk_pull.cpp:244 (nano_node+0x91ca43) | |
#1 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_bulk_pull.cpp:185 (nano_node+0x921d90) | |
#2 std::_Function_handler<void (boost::system::error_code const&, unsigned long), nano::bulk_pull_client::received_type()::$_7>::_M_invoke(std::_Any_data const&, boost::system::error_code const&, unsigned long&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:316 (nano_node+0x921b61) | |
#3 std::function<void (boost::system::error_code const&, unsigned long)>::operator()(boost::system::error_code const&, unsigned long) const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:706 (nano_node+0x64d164) | |
#4 operator() /home/wezrule/nano/raiblocks/nano/node/socket.cpp:61 (nano_node+0xa01e24) | |
#5 std::result_of<{lambda(boost::system::error_code const&, unsigned long)#1} (boost::system::error_code const&, unsigned long)>::type boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >::operator()<boost::system::error_code const&, unsigned long>((std::result_of&&)...) /usr/local/include/boost/asio/bind_executor.hpp:414 (nano_node+0xa00971) | |
#6 boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >::operator()(boost::system::error_code const&, unsigned long, int) /usr/local/include/boost/asio/impl/read.hpp:373 (nano_node+0xa00768) | |
#7 boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>::operator()() /usr/local/include/boost/asio/detail/bind_handler.hpp:164 (nano_node+0xa01b47) | |
#8 void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0xa01af5) | |
#9 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::strand<boost::asio::io_context::executor_type> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::strand<boost::asio::io_context::executor_type>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xa01ac5) | |
#10 void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::strand<boost::asio::io_context::executor_type> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::strand<boost::asio::io_context::executor_type> >*) /usr/local/include/boost/asio/impl/read.hpp:428 (nano_node+0xa01a92) | |
#11 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xa01a46) | |
#12 void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long>(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::detail::binder2<boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long>*) /usr/local/include/boost/asio/detail/bind_handler.hpp:207 (nano_node+0xa019ce) | |
#13 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > > >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0xa018d6) | |
#14 boost::asio::detail::executor_op<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, std::allocator<void>, boost::asio::detail::scheduler_operation>::do_complete(void*, std::allocator<void>*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/executor_op.hpp:70 (nano_node+0xa01c3e) | |
#15 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#16 boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>::operator()() /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:90 (nano_node+0x648c48) | |
#17 void boost::asio::asio_handler_invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0x648b75) | |
#18 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x648a0b) | |
#19 void boost::asio::io_context::executor_type::dispatch<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, std::allocator<void> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/impl/io_context.hpp:265 (nano_node+0x648808) | |
#20 void boost::asio::detail::strand_executor_service::dispatch<boost::asio::io_context::executor_type const, boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, std::allocator<void> >(std::shared_ptr<boost::asio::detail::strand_executor_service::strand_impl> const&, boost::asio::io_context::executor_type const&, boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&&, std::allocator<void> const&) /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:128 (nano_node+0xa017c8) | |
#21 void boost::asio::strand<boost::asio::io_context::executor_type>::dispatch<boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>, std::allocator<void> >(boost::asio::detail::binder2<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::system::error_code, unsigned long>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/strand.hpp:193 (nano_node+0xa016b9) | |
#22 void boost::asio::detail::handler_work<boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::asio::detail::io_object_executor<boost::asio::executor>, boost::asio::io_context::executor_type>::complete<boost::asio::detail::binder2<boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code, unsigned long>&, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_work.hpp:72 (nano_node+0xa013e5) | |
#23 boost::asio::detail::reactive_socket_recv_op<boost::asio::mutable_buffers_1, boost::asio::detail::read_op<boost::asio::basic_stream_socket<boost::asio::ip::tcp, boost::asio::executor>, boost::asio::mutable_buffers_1, boost::asio::mutable_buffer const*, boost::asio::detail::transfer_all_t, boost::asio::executor_binder<nano::socket::async_read(std::shared_ptr<std::vector<unsigned char, std::allocator<unsigned char> > >, unsigned long, std::function<void (boost::system::error_code const&, unsigned long)>)::$_1::operator()() const::{lambda(boost::system::error_code const&, unsigned long)#1}, boost::asio::strand<boost::asio::io_context::executor_type> > >, boost::asio::detail::io_object_executor<boost::asio::executor> >::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/reactive_socket_recv_op.hpp:123 (nano_node+0xa01100) | |
#24 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#25 boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:447 (nano_node+0x4d991d) | |
#26 boost::asio::detail::scheduler::run(boost::system::error_code&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:200 (nano_node+0x4d9498) | |
#27 boost::asio::io_context::run() /usr/local/include/boost/asio/impl/io_context.ipp:63 (nano_node+0xaf5165) | |
#28 operator() /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:124 (nano_node+0xaf4cfa) | |
#29 boost::detail::thread_data<nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0xaf4cac) | |
#30 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Location is heap block of size 136 at 0x7b240007eab0 allocated by thread T36: | |
#0 operator new(unsigned long) ??:? (nano_node+0x4cc9f6) | |
#1 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:111 (nano_node+0x936e0c) | |
#2 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:436 (nano_node+0x936d60) | |
#3 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/allocated_ptr.h:104 (nano_node+0x936ad0) | |
#4 __shared_count<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, const std::shared_ptr<nano::bootstrap_connections> &, std::shared_ptr<nano::transport::channel_tcp>, const std::shared_ptr<nano::socket> &> /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr_base.h:635 (nano_node+0x936952) | |
#5 __shared_ptr<std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, const std::shared_ptr<nano::bootstrap_connections> &, std::shared_ptr<nano::transport::channel_tcp>, const std::shared_ptr<nano::socket> &> /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr_base.h:1294 (nano_node+0x9368a7) | |
#6 shared_ptr<std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, const std::shared_ptr<nano::bootstrap_connections> &, std::shared_ptr<nano::transport::channel_tcp>, const std::shared_ptr<nano::socket> &> /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr.h:344 (nano_node+0x9367f1) | |
#7 std::shared_ptr<nano::bootstrap_client> std::allocate_shared<nano::bootstrap_client, std::allocator<nano::bootstrap_client>, std::shared_ptr<nano::node>, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>, std::shared_ptr<nano::socket> const&>(std::allocator<nano::bootstrap_client> const&, std::shared_ptr<nano::node>&&, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>&&, std::shared_ptr<nano::socket> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr.h:690 (nano_node+0x936711) | |
#8 std::shared_ptr<nano::bootstrap_client> std::make_shared<nano::bootstrap_client, std::shared_ptr<nano::node>, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>, std::shared_ptr<nano::socket> const&>(std::shared_ptr<nano::node>&&, std::shared_ptr<nano::bootstrap_connections> const&, std::shared_ptr<nano::transport::channel_tcp>&&, std::shared_ptr<nano::socket> const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/shared_ptr.h:706 (nano_node+0x9365d6) | |
#9 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:154 (nano_node+0x9302f6) | |
#10 std::_Function_handler<void (boost::system::error_code const&), nano::bootstrap_connections::connect_client(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, bool)::$_1>::_M_invoke(std::_Any_data const&, boost::system::error_code const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:316 (nano_node+0x92fed1) | |
#11 std::function<void (boost::system::error_code const&)>::operator()(boost::system::error_code const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_function.h:706 (nano_node+0xa0f46e) | |
#12 operator() /home/wezrule/nano/raiblocks/nano/node/socket.cpp:41 (nano_node+0x9febdb) | |
#13 std::result_of<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0 (boost::system::error_code const&)>::type boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >::operator()<boost::system::error_code const&>(boost::system::error_code const&) /usr/local/include/boost/asio/bind_executor.hpp:414 (nano_node+0x9feb72) | |
#14 boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>::operator()() /usr/local/include/boost/asio/detail/bind_handler.hpp:65 (nano_node+0x9feb29) | |
#15 void boost::asio::asio_handler_invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0x9feac5) | |
#16 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> > >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x9fea95) | |
#17 void boost::asio::detail::asio_handler_invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>*) /usr/local/include/boost/asio/detail/bind_handler.hpp:106 (nano_node+0x9fea2e) | |
#18 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x9fe936) | |
#19 boost::asio::detail::executor_op<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, std::allocator<void>, boost::asio::detail::scheduler_operation>::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/executor_op.hpp:70 (nano_node+0x9fecee) | |
#20 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#21 boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>::operator()() /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:90 (nano_node+0x648c48) | |
#22 void boost::asio::asio_handler_invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, ...) /usr/local/include/boost/asio/handler_invoke_hook.hpp:69 (nano_node+0x648b75) | |
#23 void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&, boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&) /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp:37 (nano_node+0x648a0b) | |
#24 void boost::asio::io_context::executor_type::dispatch<boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>, std::allocator<void> >(boost::asio::detail::strand_executor_service::invoker<boost::asio::io_context::executor_type const>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/impl/io_context.hpp:265 (nano_node+0x648808) | |
#25 void boost::asio::detail::strand_executor_service::dispatch<boost::asio::io_context::executor_type const, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, std::allocator<void> >(std::shared_ptr<boost::asio::detail::strand_executor_service::strand_impl> const&, boost::asio::io_context::executor_type const&, boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&&, std::allocator<void> const&) /usr/local/include/boost/asio/detail/impl/strand_executor_service.hpp:128 (nano_node+0x9fe898) | |
#26 void boost::asio::strand<boost::asio::io_context::executor_type>::dispatch<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>, std::allocator<void> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&&, std::allocator<void> const&) const /usr/local/include/boost/asio/strand.hpp:193 (nano_node+0x9fe789) | |
#27 void boost::asio::detail::handler_work<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::asio::detail::io_object_executor<boost::asio::executor>, boost::asio::strand<boost::asio::io_context::executor_type> >::complete<boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code> >(boost::asio::detail::binder1<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::system::error_code>&, boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >&) /usr/local/include/boost/asio/detail/handler_work.hpp:72 (nano_node+0x9ff475) | |
#28 boost::asio::detail::reactive_socket_connect_op<boost::asio::executor_binder<nano::socket::async_connect(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::function<void (boost::system::error_code const&)>)::$_0, boost::asio::strand<boost::asio::io_context::executor_type> >, boost::asio::detail::io_object_executor<boost::asio::executor> >::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/reactive_socket_connect_op.hpp:102 (nano_node+0x9ff23c) | |
#29 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#30 boost::asio::detail::epoll_reactor::descriptor_state::do_complete(void*, boost::asio::detail::scheduler_operation*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/impl/epoll_reactor.ipp:776 (nano_node+0x63efa2) | |
#31 boost::asio::detail::scheduler_operation::complete(void*, boost::system::error_code const&, unsigned long) /usr/local/include/boost/asio/detail/scheduler_operation.hpp:40 (nano_node+0x4da385) | |
#32 boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::scoped_lock&, boost::asio::detail::scheduler_thread_info&, boost::system::error_code const&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:447 (nano_node+0x4d991d) | |
#33 boost::asio::detail::scheduler::run(boost::system::error_code&) /usr/local/include/boost/asio/detail/impl/scheduler.ipp:200 (nano_node+0x4d9498) | |
#34 boost::asio::io_context::run() /usr/local/include/boost/asio/impl/io_context.ipp:63 (nano_node+0xaf5165) | |
#35 operator() /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:124 (nano_node+0xaf4cfa) | |
#36 boost::detail::thread_data<nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0xaf4cac) | |
#37 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Mutex M415 (0x7b4c000048e8) created at: | |
#0 pthread_mutex_lock ??:? (nano_node+0x447d77) | |
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/x86_64-linux-gnu/c++/7.5.0/bits/gthr-default.h:748 (nano_node+0x5527a3) | |
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/std_mutex.h:103 (nano_node+0x55cea5) | |
#3 nano::unique_lock<std::mutex, void>::lock_impl() /home/wezrule/nano/raiblocks/nano/lib/locks.cpp:74 (nano_node+0xad350c) | |
#4 unique_lock /home/wezrule/nano/raiblocks/nano/lib/locks.cpp:66 (nano_node+0xad347a) | |
#5 nano::bootstrap_connections::populate_connections(bool) /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:209 (nano_node+0x92dfb8) | |
#6 nano::bootstrap_connections::start_populate_connections() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:317 (nano_node+0x92ee14) | |
#7 nano::bootstrap_connections::run() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap_connections.cpp:463 (nano_node+0x92f9b7) | |
#8 operator() /home/wezrule/nano/raiblocks/nano/node/bootstrap/bootstrap.cpp:21 (nano_node+0x597252) | |
#9 boost::detail::thread_data<nano::bootstrap_initiator::bootstrap_initiator(nano::node&)::$_0>::run() /usr/local/include/boost/thread/detail/thread.hpp:120 (nano_node+0x5971fc) | |
#10 boost::(anonymous namespace)::thread_proxy(void*) thread.cpp:? (nano_node+0xd10fa6) | |
Thread T37 'I/O' (tid=27473, running) created by main thread at: | |
#0 pthread_create ??:? (nano_node+0x43b2a6) | |
#1 boost::thread::start_thread_noexcept(boost::thread_attributes const&) ??:? (nano_node+0xd111b5) | |
#2 thread<(lambda at /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120:32)> /usr/local/include/boost/thread/detail/thread.hpp:277 (nano_node+0xaf4a38) | |
#3 void __gnu_cxx::new_allocator<boost::thread>::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:136 (nano_node+0xaf49c8) | |
#4 void std::allocator_traits<std::allocator<boost::thread> >::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(std::allocator<boost::thread>&, boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:475 (nano_node+0xaf46f8) | |
#5 void std::vector<boost::thread, std::allocator<boost::thread> >::_M_realloc_insert<boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(__gnu_cxx::__normal_iterator<boost::thread*, std::vector<boost::thread, std::allocator<boost::thread> > >, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/vector.tcc:415 (nano_node+0xaf47e4) | |
#6 boost::thread& std::vector<boost::thread, std::allocator<boost::thread> >::emplace_back<boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/vector.tcc:105 (nano_node+0xaf4523) | |
#7 thread_runner /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120 (nano_node+0xaf4422) | |
#8 std::_MakeUniq<nano::thread_runner>::__single_object std::make_unique<nano::thread_runner, boost::asio::io_context&, unsigned int&>(boost::asio::io_context&, unsigned int&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:821 (nano_node+0x4d2c73) | |
#9 nano_daemon::daemon::run(boost::filesystem::path const&, nano::node_flags const&) /home/wezrule/nano/raiblocks/nano/nano_node/daemon.cpp:148 (nano_node+0x4d0115) | |
#10 main /home/wezrule/nano/raiblocks/nano/nano_node/entry.cpp:158 (nano_node+0x4f9cea) | |
Thread T39 'I/O' (tid=27475, running) created by main thread at: | |
#0 pthread_create ??:? (nano_node+0x43b2a6) | |
#1 boost::thread::start_thread_noexcept(boost::thread_attributes const&) ??:? (nano_node+0xd111b5) | |
#2 thread<(lambda at /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120:32)> /usr/local/include/boost/thread/detail/thread.hpp:277 (nano_node+0xaf4a38) | |
#3 void __gnu_cxx::new_allocator<boost::thread>::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:136 (nano_node+0xaf49c8) | |
#4 void std::allocator_traits<std::allocator<boost::thread> >::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(std::allocator<boost::thread>&, boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:475 (nano_node+0xaf46f8) | |
#5 boost::thread& std::vector<boost::thread, std::allocator<boost::thread> >::emplace_back<boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/vector.tcc:100 (nano_node+0xaf44e0) | |
#6 thread_runner /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120 (nano_node+0xaf4422) | |
#7 std::_MakeUniq<nano::thread_runner>::__single_object std::make_unique<nano::thread_runner, boost::asio::io_context&, unsigned int&>(boost::asio::io_context&, unsigned int&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:821 (nano_node+0x4d2c73) | |
#8 nano_daemon::daemon::run(boost::filesystem::path const&, nano::node_flags const&) /home/wezrule/nano/raiblocks/nano/nano_node/daemon.cpp:148 (nano_node+0x4d0115) | |
#9 main /home/wezrule/nano/raiblocks/nano/nano_node/entry.cpp:158 (nano_node+0x4f9cea) | |
Thread T36 'I/O' (tid=27472, running) created by main thread at: | |
#0 pthread_create ??:? (nano_node+0x43b2a6) | |
#1 boost::thread::start_thread_noexcept(boost::thread_attributes const&) ??:? (nano_node+0xd111b5) | |
#2 thread<(lambda at /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120:32)> /usr/local/include/boost/thread/detail/thread.hpp:277 (nano_node+0xaf4a38) | |
#3 void __gnu_cxx::new_allocator<boost::thread>::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/ext/new_allocator.h:136 (nano_node+0xaf49c8) | |
#4 void std::allocator_traits<std::allocator<boost::thread> >::construct<boost::thread, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(std::allocator<boost::thread>&, boost::thread*, boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/alloc_traits.h:475 (nano_node+0xaf46f8) | |
#5 boost::thread& std::vector<boost::thread, std::allocator<boost::thread> >::emplace_back<boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0>(boost::thread_attributes&, nano::thread_runner::thread_runner(boost::asio::io_context&, unsigned int)::$_0&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/vector.tcc:100 (nano_node+0xaf44e0) | |
#6 thread_runner /home/wezrule/nano/raiblocks/nano/lib/threading.cpp:120 (nano_node+0xaf4422) | |
#7 std::_MakeUniq<nano::thread_runner>::__single_object std::make_unique<nano::thread_runner, boost::asio::io_context&, unsigned int&>(boost::asio::io_context&, unsigned int&) /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:821 (nano_node+0x4d2c73) | |
#8 nano_daemon::daemon::run(boost::filesystem::path const&, nano::node_flags const&) /home/wezrule/nano/raiblocks/nano/nano_node/daemon.cpp:148 (nano_node+0x4d0115) | |
#9 main /home/wezrule/nano/raiblocks/nano/nano_node/entry.cpp:158 (nano_node+0x4f9cea) | |
SUMMARY: ThreadSanitizer: data race /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/chrono:640 in std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::time_since_epoch() const |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment