Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-52956

Add storage debug method to dump system-wide RecoveryUnit/transaction state

    XMLWordPrintableJSON

Details

    • Icon: New Feature New Feature
    • Resolution: Duplicate
    • Icon: Major - P3 Major - P3
    • None
    • None
    • Storage
    • None
    • Storage Execution

    Description

      There are a couple ways of going about this.

      • Expose methods in WT that dumps its internal state.
      • Have MDB walk Clients->OpCtx->RecoveryUnits

      The latter is advantageous because it's easier to connect an OpCtx with what it was doing than a pointer to a WT session.

      However, there are some gaps with walking MDB's tree. It's uncommon, but possible for recovery units to become detached as part of a "side transaction". They're temporarily stored as function locals and otherwise unable to be discovered by traversing memory structures.

      If WT_CONNECTION::debug_info returned a structure, we might be able to get the best of both worlds by linking up a WT session with an OpCtx and be able to surface the dangling transactions.

      Attachments

        Activity

          People

            backlog-server-execution Backlog - Storage Execution Team
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: