Description
We are seeing a failure in MongoDb testing where the following assert in __curfile_reopen fails:
WT_ASSERT(session, can_reopen || dhandle != session->dhandle);
|
This code was added recently as part of WT-6743.
MongoDB stacktrace:
mongo::stack_trace_detail::(anonymous namespace)::printStackTraceImpl(mongo::stack_trace_detail::(anonymous namespace)::Options const&, mongo::StackTraceSink*)
|
mongo::printStackTrace()
|
abruptQuit
|
killpg
|
gsignal
|
abort
|
__wt_abort
|
__curfile_reopen
|
__wt_session_cursor_cache_sweep
|
__wt_cursor_cache_release
|
__curfile_close
|
mongo::WiredTigerSession::closeAllCursors(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
|
mongo::WiredTigerSessionCache::releaseSession(mongo::WiredTigerSession*)
|
mongo::WiredTigerRecoveryUnit::~WiredTigerRecoveryUnit()
|
mongo::WiredTigerRecoveryUnit::~WiredTigerRecoveryUnit()
|
std::unique_ptr<mongo::RecoveryUnit, std::default_delete<mongo::RecoveryUnit> >::~unique_ptr()
|
mongo::OperationContext::~OperationContext()
|
mongo::OperationContext::~OperationContext()
|
mongo::ServiceContext::OperationContextDeleter::operator()(mongo::OperationContext*) const
|
mongo::transport::ServiceStateMachine::Impl::processMessage()
|
mongo::future_details::FutureImpl<mongo::future_details::FakeVoid>::then<mongo::transport::ServiceStateMachine::Impl::startNewLoop(mongo::Status const&)::$_9>(mongo::transport::ServiceStateMachine::Impl::startNewLoop(mongo::Status const&)::$_9&&) &&::{lambda(mongo::future_details::FakeVoid&&)#1}::operator()(mongo::future_details::FakeVoid&&) const
|
mongo::transport::ServiceStateMachine::Impl::startNewLoop(mongo::Status const&)
|
void mongo::unique_function<void (mongo::Status)>::callRegularVoid<mongo::transport::ServiceStateMachine::Impl::startNewLoop(mongo::Status const&)::$_11::operator()(mongo::Status) const::{lambda(mongo::Status)#1}>(std::integral_constant<bool, true>, mongo::transport::ServiceStateMachine::Impl::startNewLoop(mongo::Status const&)::$_11::operator()(mongo::Status) const::{lambda(mongo::Status)#1}&, mongo::Status&&)
|
void mongo::unique_function<void (mongo::Status)>::callRegularVoid<mongo::transport::ServiceExecutorSynchronous::runOnDataAvailable(std::shared_ptr<mongo::transport::Session> const&, mongo::unique_function<void (mongo::Status)>)::$_5>(std::integral_constant<bool, true>, mongo::transport::ServiceExecutorSynchronous::runOnDataAvailable(std::shared_ptr<mongo::transport::Session> const&, mongo::unique_function<void (mongo::Status)>)::$_5&, mongo::Status&&)
|
mongo::unique_function<void ()>::makeImpl<mongo::transport::ServiceExecutor::schedule(mongo::unique_function<void (mongo::Status)>)::{lambda()#1}>(mongo::transport::ServiceExecutor::schedule(mongo::unique_function<void (mongo::Status)>)::{lambda()#1}&&)::SpecificImpl::call()
|
void mongo::unique_function<void ()>::callRegularVoid<mongo::transport::ServiceExecutorSynchronous::scheduleTask(mongo::unique_function<void ()>, mongo::transport::ServiceExecutor::ScheduleFlags)::$_4>(std::integral_constant<bool, true>, mongo::transport::ServiceExecutorSynchronous::scheduleTask(mongo::unique_function<void ()>, mongo::transport::ServiceExecutor::ScheduleFlags)::$_4&)
|
void mongo::unique_function<void ()>::callRegularVoid<mongo::launchServiceWorkerThread(mongo::unique_function<void ()>)::$_3>(std::integral_constant<bool, true>, mongo::launchServiceWorkerThread(mongo::unique_function<void ()>)::$_3&)
|
mongo::(anonymous namespace)::runFunc(void*)
|
start_thread
|
clone
|