[SERVER-69385] Faster NamespaceString and DatabaseName construction Created: 01/Sep/22  Updated: 02/Mar/23

Status: Blocked
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Billy Donahue Assignee: Backlog - Service Architecture
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-66963 Improve performance of NamespaceStrin... Closed
Assigned Teams:
Service Arch
Sprint: Service Arch 2022-12-26, Service Arch 2022-09-19, Service Arch 2022-10-03, Service Arch 2022-10-17, Service Arch 2022-10-31, Service Arch 2022-11-14, Service Arch 2022-11-28, Service Arch 2022-12-12, Service Arch 2023-01-09, Service Arch 2023-01-23, Service Arch 2023-02-06, Service Arch 2023-02-20
Participants:

 Description   

We can go a little further than SERVER-66963 by avoiding StringData.toString.
These classes store a std::string data member, so the fast idiom is to accept a std::string by value and std::move it into the data member.

If the caller already has a std::string rvalue, then StringData is a pessimization.



 Comments   
Comment by Billy Donahue [ 02/Mar/23 ]

putting this back on backlog while its blocked on tenantId project (per discussion in the code review).

Comment by Billy Donahue [ 08/Sep/22 ]

(picked up during ServiceArch onsite week)

Comment by Billy Donahue [ 02/Sep/22 ]

PoC https://github.com/10gen/mongo/pull/7297

Generated at Thu Feb 08 06:13:19 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.