v6d-io / v6d

vineyard (v6d): an in-memory immutable data manager. (Project under CNCF, TAG-Storage)
https://v6d.io
Apache License 2.0
827 stars 122 forks source link

Vineyardd will crashed when reset the etcd client #1997

Open dashanji opened 2 weeks ago

dashanji commented 2 weeks ago

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
github-actions[bot] commented 6 days ago

/cc @dashanji, this issus/pr has had no activity for for a long time, could you folks help to review the status ? To suppress further notifications,