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

Kill long-running snapshot transactions

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.7.4
    • Component/s: Storage
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Sprint:
      Storage NYC 2018-03-26, Storage NYC 2018-04-09, Storage NYC 2018-04-23
    • Linked BF Score:
      0

      Description

      From the design,

      "Motivation:
      The "oldest" open transaction in WiredTiger will pin write history in cache until it finishes. Here, "oldest" means the read timestamp is the earliest of any open transaction on the system. Any write history with a timestamp equal to or newer than this read timestamp must stay pinned in cache, in order to serve the open transaction. We need a way to prevent these transactions from staying open too long, in order to prevent cache pressure from becoming too extreme."

      Adding a transactionLifetimeLimitSeconds server parameter, which can be set at startup and via setParameter. Transaction will now expire, per the server parameter, and be asynchronously periodically cleaned up.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              dianna.hohensee Dianna Hohensee
              Reporter:
              milkie Eric Milkie
              Participants:
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: