-
Notifications
You must be signed in to change notification settings - Fork 127
Open
Labels
Description
Describe your problem
In instanceUpdate
, we will reset the etcd client. At the same time, the other thread have started a lock pplx task with the previous etcd client. Then, the vineyardd will crash with the following log.
││ __cxxabiv1::__terminate(void (*)()) + 0x6 ││ std::terminate() + 0x11 ││ pplx::details::_ExceptionHolder::~_ExceptionHolder() + 0x18 ││ std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() + 0x38 ││ std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() + 0x38 │
│ vineyard::EtcdMetaService::UpdateEndpoint() + 0xD22 │
│ pplx::details::_TaskProcHandle::_RunChoreBridge(void*) + 0x1F │
│ boost::asio::detail::completion_handler<boost::_bi::bind_t<void, void (*)(void*), boost::_bi::li │
│ boost::asio::detail::scheduler::do_run_one(boost::asio::detail::conditionally_enabled_mutex::sco │
│ boost::asio::detail::scheduler::run(boost::system::error_code&) + 0xD5 │
│ crossplat::threadpool::initialize_with_threads(unsigned long) + 0x132 │
│ boost_asio_detail_posix_thread_function + 0x17 │
│ pthread_condattr_setpshared + 0x4D4 │
│ __xmknodat + 0x23C
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Todo