Improve ServiceExecutorSynchronous worker threads (SERVER-69905)

[SERVER-71760] Don't detach service worker threads Created: 01/Dec/22  Updated: 05/Dec/22

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

Type: Sub-task 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

Assigned Teams:
Service Arch
Sprint: Service Arch 2022-12-26, Service Arch 2022-10-17, Service Arch 2022-11-14, Service Arch 2022-11-28, Service Arch 2022-12-12, Service Arch 2023-01-09
Participants:

 Comments   
Comment by Billy Donahue [ 01/Dec/22 ]

Placing on hold. Not such a quick win after a PoC.

The (runtime) problem with this is that our ServiceExecutor workers take the responsibility to remove themselves from the buckets the ServiceExecutor uses to track them. So they actually call the Worker destructor from the Worker thread. That destructor then cannot join the thread object. Someone else has to do it. The caller of shutdown() can do it but even that caller is itself potentially an ingress thread.

Anyway not so simple. Postponing it.

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