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

Reduce time spent blocking new transaction coordination requests after coordinator failover

    XMLWordPrintableJSON

Details

    • Sharding

    Description

      (Old title: Allow finer grained control of coordinator re-creation on step-up)

      On step-up, we launch an asynchronous task to read all documents from the coordinators collection and recreate new TransactionCoordinator objects in memory for each document to continue the commit process for that transaction where it left off. Currently, all operations that access the TransactionCoordinatorCatalog during this time block until this process is complete. This means that all operations that attempt to create a new transaction or to commit an existing transaction will block behind that process, which could be time-consuming since it requires a full collection scan. We should probably benchmark how long that will be expected to take, and if necessary, improve the concurrency mechanism around creating new coordinators on step-up.

      Attachments

        Activity

          People

            backlog-server-sharding Backlog - Sharding Team
            matthew.saltz@mongodb.com Matthew Saltz (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: