Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-7143

Collect data on failing assert when in-use dhandle can't be reopened

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: WT10.0.0, 4.9.0, 4.4.5
    • Component/s: None
    • Labels:
      None

      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

        Attachments

          Activity

            People

            Assignee:
            donald.anderson Donald Anderson
            Reporter:
            tammy.bailey Tammy Bailey
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: