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

Write a benchmark of shard split critical section

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 6.1.0-rc0
    • None
    • None
    • None
    • Fully Compatible
    • Server Serverless 2022-05-16, Server Serverless 2022-05-30

    Description

      The technical design says we will create a benchmark of the critical section of the shard split operation in order to possibly optimize the implement in future work. Confer with the performance team to write a benchmark measuring the critical section.

      Phases

      • Start of the shard split
        • Log line "Starting shard split"
        • Right before writes are blocked by the tenant access blocker
      • Application of the split config
        • Log line "Applying split config"
        • When `replSetReconfig` is called with the split config
      • End of the shard split
        • Log line "Shard split completed"
        • When the `DurableState` is created to be returned and fulfill `decisionPromise`
      • End of the shard split (without `replSetStepUp`)
        • Log line "Shard split completed"
        • When the `DurableState` is created to be returned and fulfill `decisionPromise`
        • Sending of `replSetStepUp` is disabled, the split completes as soon as all recipient nodes have joined the set (a primary may not have been elected yet)

      Result

      Data on top of master c6c59ecba6a2c85ad93d2f985f69a9f53d0f19da by running the test locally on evergreen workstation. Incertitude is one standard deviation with 10 repetition of a shard split.

        End of the shard split End of the shard split (without replSetStepUp)
      Start of the shard split 3.55s ± 0.03  
      Applying split config 2.07s ± 0.02 2.05s ± 0.02

       

      Attachments

        Activity

          People

            didier.nadeau@mongodb.com Didier Nadeau
            matt.broadstone@mongodb.com Matt Broadstone
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: