[SERVER-62367] Write a benchmark of shard split critical section Created: 05/Jan/22  Updated: 29/Oct/23  Resolved: 27/May/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 6.1.0-rc0

Type: Task Priority: Major - P3
Reporter: Matt Broadstone Assignee: Didier Nadeau
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Server Serverless 2022-05-16, Server Serverless 2022-05-30
Participants:

 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

 



 Comments   
Comment by Githook User [ 27/May/22 ]

Author:

{'name': 'Didier Nadeau', 'email': 'didier.nadeau@mongodb.com', 'username': 'nadeaudi'}

Message: SERVER-62367 Add javascript test to compare shard split performance to moveChunk
Branch: master
https://github.com/mongodb/mongo/commit/63f17f3aef165460580a39906fc645046b4b4680

Comment by Didier Nadeau [ 01/Apr/22 ]

Depreoritized in favor of working on SERVER-64906.

Generated at Thu Feb 08 05:54:56 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.