119 references to BuildRequest
Microsoft.Build (119)
BackEnd\Components\Scheduler\SchedulableRequest.cs (10)
344
BlockingRequestKey key = new BlockingRequestKey(blockingRequest.
BuildRequest
);
468
public bool IsProxyBuildRequest() =>
BuildRequest
.IsProxyBuildRequest();
519
SchedulableRequest alternateRequest = _schedulingData.GetBlockedRequestIfAny(blockingRequest.
BuildRequest
.GlobalRequestId);
534
if (requestToEvaluate.
BuildRequest
.GlobalRequestId == this.
BuildRequest
.GlobalRequestId)
545
requestToEvaluate = _schedulingData.GetBlockedRequestIfAny(requestToEvaluate.
BuildRequest
.GlobalRequestId);
595
if (currentRequest.
BuildRequest
.GlobalRequestId == blockingRequest.
BuildRequest
.GlobalRequestId)
616
BlockingRequestKey key = new BlockingRequestKey(requestWeAreBlockedBy.
BuildRequest
);
633
throw new SchedulerCircularDependencyException(requestCausingFailure.
BuildRequest
, ancestors);
BackEnd\Components\Scheduler\Scheduler.cs (71)
342
return request.
BuildRequest
;
394
TraceScheduler($"Circular dependency caused by request {ex.Request.GlobalRequestId}({ex.Request.ConfigurationId}) (nr {ex.Request.NodeRequestId}), parent {parentRequest.
BuildRequest
.GlobalRequestId}({parentRequest.
BuildRequest
.ConfigurationId}) (nr {parentRequest.
BuildRequest
.NodeRequestId})");
395
responses.Add(ScheduleResponse.CreateCircularDependencyResponse(nodeId, parentRequest.
BuildRequest
, ex.Request));
407
TraceScheduler($"Circular dependency caused by request {ex.Request.GlobalRequestId}({ex.Request.ConfigurationId}) (nr {ex.Request.NodeRequestId}), parent {parentRequest.
BuildRequest
.GlobalRequestId}({parentRequest.
BuildRequest
.ConfigurationId}) (nr {parentRequest.
BuildRequest
.NodeRequestId})");
408
responses.Add(ScheduleResponse.CreateCircularDependencyResponse(nodeId, parentRequest.
BuildRequest
, ex.Request));
446
ErrorUtilities.VerifyThrow(result.ParentGlobalRequestId == request.Parent.
BuildRequest
.GlobalRequestId, "Result's parent doesn't match request's parent.");
455
ScheduleResponse response = TrySatisfyRequestFromCache(request.Parent.AssignedNode, request.
BuildRequest
, skippedResultsDoNotCauseCacheMiss: _componentHost.BuildParameters.SkippedResultsDoNotCauseCacheMiss());
483
if (unscheduledRequest.
BuildRequest
.GlobalRequestId == result.GlobalRequestId)
485
TraceScheduler($"Request {unscheduledRequest.
BuildRequest
.GlobalRequestId} (node request {unscheduledRequest.
BuildRequest
.NodeRequestId}) also satisfied by result.");
486
BuildResult newResult = new BuildResult(unscheduledRequest.
BuildRequest
, result, null);
499
ScheduleResponse response = TrySatisfyRequestFromCache(parentNode, unscheduledRequest.
BuildRequest
, skippedResultsDoNotCauseCacheMiss: true);
504
LogRequestHandledFromCache(unscheduledRequest.
BuildRequest
, response.BuildResult);
526
_noLoggingCompletedSubmissionDetails = $"SubmissionId: {unscheduledRequest.
BuildRequest
.SubmissionId}; BuildRequestDataFlags: {unscheduledRequest.
BuildRequest
.BuildRequestDataFlags}";
622
if (request.
BuildRequest
.SubmissionId == submissionId)
910
ReadSchedulingPlan(_schedulingData.GetRequestsByHierarchy(null).First().
BuildRequest
.SubmissionId);
1005
SchedulingPlan.PlanConfigData configToConsider = _schedulingPlan.GetConfiguration(request.
BuildRequest
.ConfigurationId);
1038
AssignUnscheduledRequestsToInProcNode(responses, idleNodes, request => IsTraversalRequest(request.
BuildRequest
));
1139
int requiredNodeId = _schedulingData.GetAssignedNodeForRequestConfiguration(unscheduledRequest.
BuildRequest
.ConfigurationId);
1143
System.IO.FileInfo f = new FileInfo(_configCache[unscheduledRequest.
BuildRequest
.ConfigurationId].ProjectFullPath);
1181
int requiredNodeId = _schedulingData.GetAssignedNodeForRequestConfiguration(unscheduledRequest.
BuildRequest
.ConfigurationId);
1185
System.IO.FileInfo f = new FileInfo(_configCache[unscheduledRequest.
BuildRequest
.ConfigurationId].ProjectFullPath);
1223
BuildRequest currentRequest = currentSchedulableRequest.
BuildRequest
;
1397
int requiredNodeId = _schedulingData.GetAssignedNodeForRequestConfiguration(request.
BuildRequest
.ConfigurationId);
1409
TraceScheduler($"Chose not to assign request {request.
BuildRequest
.GlobalRequestId} to node {nodeId} because its count of configurations ({configurationCountsByNode[nodeId]}) exceeds the current limit ({configurationCountLimit}).");
1431
bool mustSendConfigurationToNode = _availableNodes[nodeId].AssignConfiguration(request.
BuildRequest
.ConfigurationId);
1435
BuildRequestConfiguration config = _configCache[request.
BuildRequest
.ConfigurationId];
1443
responses.Add(ScheduleResponse.CreateScheduleResponse(nodeId, request.
BuildRequest
, mustSendConfigurationToNode));
1444
TraceScheduler($"Executing request {request.
BuildRequest
.GlobalRequestId} on node {nodeId} with parent {(request.Parent == null ? -1 : request.Parent.
BuildRequest
.GlobalRequestId)}");
1521
NodeAffinity affinity = GetNodeAffinityForRequest(request.
BuildRequest
);
1558
int assignedNodeForConfiguration = _schedulingData.GetAssignedNodeForRequestConfiguration(request.
BuildRequest
.ConfigurationId);
1568
NodeAffinity affinityRequired = GetNodeAffinityForRequest(request.
BuildRequest
);
1684
_resultsCache.AddResult(new BuildResult(request.
BuildRequest
, new BuildAbortedException()));
1711
blockingRequest.
BuildRequest
.ConfigurationId == blockedRequest.
BuildRequest
.ConfigurationId &&
1730
BuildRequest newRequest = new BuildRequest(parentRequest.
BuildRequest
.SubmissionId, BuildRequest.ResultsTransferNodeRequestId, parentRequest.
BuildRequest
.ConfigurationId, [], null, parentRequest.
BuildRequest
.BuildEventContext, parentRequest.
BuildRequest
, parentRequest.
BuildRequest
.BuildRequestDataFlags);
1742
BuildRequestConfiguration configuration = _configCache[parentRequest.
BuildRequest
.ConfigurationId];
1825
existingRequestAffinity = GetNodeAffinityForRequest(existingRequest.
BuildRequest
);
1876
responses.Add(ScheduleResponse.CreateResumeExecutionResponse(parentRequest.AssignedNode, parentRequest.
BuildRequest
.GlobalRequestId));
1901
TraceScheduler($"Unblocking request {request.
BuildRequest
.GlobalRequestId} on node {nodeId}");
1904
ScheduleResponse response = ScheduleResponse.CreateResumeExecutionResponse(nodeId, request.
BuildRequest
.GlobalRequestId);
1921
ScheduleResponse response = TrySatisfyRequestFromCache(nodeForResults, request.
BuildRequest
, skippedResultsDoNotCauseCacheMiss: _componentHost.BuildParameters.SkippedResultsDoNotCauseCacheMiss());
1927
LogRequestHandledFromCache(request.
BuildRequest
, response.BuildResult);
1938
LogRequestHandledFromCache(request.
BuildRequest
, response.Unblocker.Result);
1941
TraceScheduler($"Reporting results for request {request.
BuildRequest
.GlobalRequestId} with parent {request.
BuildRequest
.ParentGlobalRequestId} to node {response.NodeId} from cache.");
1956
CheckIfCacheMissOnReferencedProjectIsAllowedAndErrorIfNot(nodeForResults, request.
BuildRequest
, responses, emitNonErrorLogs: false);
2106
if (blockedRequest.
BuildRequest
.GlobalRequestId == request.ParentGlobalRequestId)
2108
configurationId = blockedRequest.
BuildRequest
.ConfigurationId;
2117
if (executingRequest.
BuildRequest
.GlobalRequestId == request.ParentGlobalRequestId)
2119
configurationId = executingRequest.
BuildRequest
.ConfigurationId;
2346
if (TargetsMatch(requestTargetsSet, existingRequest.
BuildRequest
.Targets))
2348
request.GlobalRequestId = existingRequest.
BuildRequest
.GlobalRequestId;
2451
int workId = useConfigurations ? buildEvent.Request.
BuildRequest
.ConfigurationId : buildEvent.Request.
BuildRequest
.GlobalRequestId;
2647
useConfigurations ? request.
BuildRequest
.ConfigurationId : request.
BuildRequest
.GlobalRequestId,
2651
_configCache[request.
BuildRequest
.ConfigurationId].ProjectFullPath,
2652
String.Join(", ", request.
BuildRequest
.Targets));
2783
.
BuildRequest
.GlobalRequestId)
2978
var buildRequest = request.
BuildRequest
;
BackEnd\Components\Scheduler\SchedulingData.cs (32)
265
if (!_configurationToRequests.TryGetValue(request.
BuildRequest
.ConfigurationId, out requests))
268
_configurationToRequests[request.
BuildRequest
.ConfigurationId] = requests;
281
ErrorUtilities.VerifyThrow(_buildHierarchy.ContainsKey(parent), $"Parent doesn't exist in build hierarchy for request {request.
BuildRequest
.GlobalRequestId}");
297
_blockedRequests.Remove(request.
BuildRequest
.GlobalRequestId);
301
_yieldingRequests.Remove(request.
BuildRequest
.GlobalRequestId);
309
_executingRequests.Remove(request.
BuildRequest
.GlobalRequestId);
314
_readyRequests.Remove(request.
BuildRequest
.GlobalRequestId);
333
ErrorUtilities.VerifyThrow(!requestsAssignedToNode.Contains(request), $"Request {request.
BuildRequest
.GlobalRequestId} is already scheduled to node {request.AssignedNode}");
344
if (!configurationsAssignedToNode.Contains(request.
BuildRequest
.ConfigurationId))
346
configurationsAssignedToNode.Add(request.
BuildRequest
.ConfigurationId);
357
ErrorUtilities.VerifyThrow(!_blockedRequests.ContainsKey(request.
BuildRequest
.GlobalRequestId), $"Request with global id {request.
BuildRequest
.GlobalRequestId} is already blocked!");
358
_blockedRequests[request.
BuildRequest
.GlobalRequestId] = request;
362
ErrorUtilities.VerifyThrow(!_yieldingRequests.ContainsKey(request.
BuildRequest
.GlobalRequestId), $"Request with global id {request.
BuildRequest
.GlobalRequestId} is already yielded!");
363
_yieldingRequests[request.
BuildRequest
.GlobalRequestId] = request;
367
ErrorUtilities.VerifyThrow(_configurationToRequests.ContainsKey(request.
BuildRequest
.ConfigurationId), $"Configuration {request.
BuildRequest
.ConfigurationId} never had requests assigned to it.");
368
ErrorUtilities.VerifyThrow(_configurationToRequests[request.
BuildRequest
.ConfigurationId].Count > 0, $"Configuration {request.
BuildRequest
.ConfigurationId} has no requests assigned to it.");
369
_configurationToRequests[request.
BuildRequest
.ConfigurationId].Remove(request);
379
ErrorUtilities.VerifyThrow(!_executingRequests.ContainsKey(request.
BuildRequest
.GlobalRequestId), $"Request with global id {request.
BuildRequest
.GlobalRequestId} is already executing!");
382
_executingRequests[request.
BuildRequest
.GlobalRequestId] = request;
384
_configurationToNode[request.
BuildRequest
.ConfigurationId] = request.AssignedNode;
393
ErrorUtilities.VerifyThrow(!_readyRequests.ContainsKey(request.
BuildRequest
.GlobalRequestId), $"Request with global id {request.
BuildRequest
.GlobalRequestId} is already ready!");
394
_readyRequests[request.
BuildRequest
.GlobalRequestId] = request;
402
ErrorUtilities.VerifyThrow(!readyRequestsOnNode.Contains(request), $"Request with global id {request.
BuildRequest
.GlobalRequestId} is already marked as ready on node {request.AssignedNode}");
407
ErrorUtilities.ThrowInternalError($"Request with global id {request.
BuildRequest
.GlobalRequestId} cannot transition to the Unscheduled state");
550
return InternalGetScheduledRequestByGlobalRequestId(request.
BuildRequest
.GlobalRequestId) != null;
639
return CanScheduleConfigurationToNode(request.
BuildRequest
.ConfigurationId, nodeId);
BackEnd\Components\Scheduler\SchedulingPlan.cs (6)
211
return _configCache[rootRequest.
BuildRequest
.ConfigurationId].ProjectFullPath + ".buildplan";
428
if (request.
BuildRequest
.SubmissionId == submissionId)
442
file.Write(request.
BuildRequest
.ConfigurationId);
445
file.Write(" {0}", child.
BuildRequest
.ConfigurationId);
465
accumulatedTimeByConfiguration.TryGetValue(request.
BuildRequest
.ConfigurationId, out accumulatedTime);
466
accumulatedTimeByConfiguration[request.
BuildRequest
.ConfigurationId] = accumulatedTime + request.GetTimeSpentInState(SchedulableRequestState.Executing).TotalMilliseconds;