[SERVER-71786] Move profiling writes into a profile writing service Created: 02/Dec/22  Updated: 17/Jan/23

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

Type: Improvement Priority: Major - P3
Reporter: Jordi Olivares Provencio Assignee: Backlog - Storage Execution Team
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-59673 Investigate better solutions for fixi... Closed
Assigned Teams:
Storage Execution
Participants:

 Description   

As part of the PR discussion of SERVER-59673 the possibility of moving profile operations into a separate service came up.

This would resolve some potential overhead issues introduced with the changes in that ticket as it will now require a new Client creation on every profiling write operation. This client creation is potentially contentious due to a lock acquistion in ServiceContext.

One observations to have is that currently in a multi-document transaction the profile write will still hold all the locks held during the operation. In all other cases we do not holkd any locks at that point.

Moving to a write service will also be a change in behaviour from the perspective of the end-user. Currently if an operation finishes and writes its profile, the profile is immediately available once the operation returns to the user. Using a service makes this profile availability separate from the operation being finished as both operations are independent. As a result, the profile will eventually be available after an operation finishes.



 Comments   
Comment by Dan Larkin-York [ 13/Dec/22 ]

We think this is larger than a single ticket, and likely a project.

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