[SERVER-51706] Require OperationContext for egress commands Created: 16/Oct/20  Updated: 09/Feb/23

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

Type: Improvement Priority: Major - P3
Reporter: Benjamin Caimano (Inactive) Assignee: Backlog - Service Architecture
Resolution: Unresolved Votes: 0
Labels: ben-sa-triage
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Service Arch
Backwards Compatibility: Fully Compatible
Participants:

 Description   

We have the option to provide an OperationContext with a RemoteCommandRequest here. However, we do not require that OperationContext pointer be valid. We should start making progress towards requiring that OperationContext. If we do so, we can make use of operation deadlines and better trace the state of remote operations.

Evaluating places where RemoteCommandRequest is used, they tend to lack an explicit OperationContext. However, I'm nearly certain most possess a Client on thread. This ticket may involve investigation and submitting child tickets to other teams.



 Comments   
Comment by Matt Diener (Inactive) [ 02/Feb/23 ]

In general, I have been thinking of Operations as commands. Given this, we have a very clear lifetime story. We read some bytes from a socket, those bytes combine to a message, we create an operation context, we run a command from the request, we respond, we destroy the operation context. Maybe something slightly different for internal commands.

Given this, I think things get really weird when we start trying to make things work with background tasks and primary only services.

At the end of the day, the question is: "What does the OperationContext hold that is required for egress?" I think we're better off separating that. Otherwise, I think there's some sort of layering violation.

Comment by Lauren Lewis (Inactive) [ 18/Mar/22 ]

We haven’t heard back from you for some time, so we're going to close this ticket. If this is still an issue for you, please provide additional information and we will reopen the ticket.

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