[SERVER-57445] Make join() a private member of ServiceExecutorFixed Created: 04/Jun/21  Updated: 29/Oct/23  Resolved: 12/Jul/21

Status: Closed
Project: Core Server
Component/s: Internal Code
Affects Version/s: None
Fix Version/s: 5.1.0-rc0

Type: Improvement Priority: Major - P3
Reporter: Amirsaman Memaripour Assignee: Billy Donahue
Resolution: Fixed Votes: 0
Labels: servicearch-wfbf-day
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-54353 Wait for ServiceExecutorFixed to join... Closed
Backwards Compatibility: Fully Compatible
Sprint: Service Arch 2021-05-31, Service Arch 2021-06-14, Service Arch 2021-06-28, Service Arch 2021-07-12
Participants:

 Description   

Once SERVER-54353 is completed, the shutdown method for ServiceExecutorFixed will also join with all executor threads to comply with the ServiceExecutor contract. This change will make external calls to join redundant and unnecessary. This ticket should make join a private member of ServiceExecutorFixed to prevent any ambiguity.



 Comments   
Comment by Vivian Ge (Inactive) [ 06/Oct/21 ]

Updating the fixversion since branching activities occurred yesterday. This ticket will be in rc0 when it’s been triggered. For more active release information, please keep an eye on #server-release. Thank you!

Comment by Githook User [ 12/Jul/21 ]

Author:

{'name': 'Billy Donahue', 'email': 'billy.donahue@mongodb.com', 'username': 'BillyDonahue'}

Message: SERVER-57445 Make ServiceExecutorFixed::join private
Branch: master
https://github.com/mongodb/mongo/commit/e4df9deb7ad42aa428da0e6d684a824b506fd98b

Comment by Billy Donahue [ 02/Jul/21 ]

Code Review: https://mongodbcr.appspot.com/762730002/

Comment by Billy Donahue [ 04/Jun/21 ]

join can be implemented by calling shutdown with an effectively infinite timeout, so we don't technically need it in the public API as its own thing, so I agree.

The join call in the Handle (ServiceContext decoration) class may still be significant, and I believe it's the only external caller (it's an implentation detail of service_executor_fixed.cpp but it doesn't have private access to the class.

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