116 references to BuildRequest
Microsoft.Build (116)
BackEnd\Components\Scheduler\SchedulableRequest.cs (10)
344BlockingRequestKey key = new BlockingRequestKey(blockingRequest.BuildRequest); 468public bool IsProxyBuildRequest() => BuildRequest.IsProxyBuildRequest(); 519SchedulableRequest alternateRequest = _schedulingData.GetBlockedRequestIfAny(blockingRequest.BuildRequest.GlobalRequestId); 534if (requestToEvaluate.BuildRequest.GlobalRequestId == this.BuildRequest.GlobalRequestId) 545requestToEvaluate = _schedulingData.GetBlockedRequestIfAny(requestToEvaluate.BuildRequest.GlobalRequestId); 595if (currentRequest.BuildRequest.GlobalRequestId == blockingRequest.BuildRequest.GlobalRequestId) 616BlockingRequestKey key = new BlockingRequestKey(requestWeAreBlockedBy.BuildRequest); 633throw new SchedulerCircularDependencyException(requestCausingFailure.BuildRequest, ancestors);
BackEnd\Components\Scheduler\Scheduler.cs (72)
297return request.BuildRequest; 349TraceScheduler("Circular dependency caused by request {0}({1}) (nr {2}), parent {3}({4}) (nr {5})", ex.Request.GlobalRequestId, ex.Request.ConfigurationId, ex.Request.NodeRequestId, parentRequest.BuildRequest.GlobalRequestId, parentRequest.BuildRequest.ConfigurationId, parentRequest.BuildRequest.NodeRequestId); 350responses.Add(ScheduleResponse.CreateCircularDependencyResponse(nodeId, parentRequest.BuildRequest, ex.Request)); 362TraceScheduler("Circular dependency caused by request {0}({1}) (nr {2}), parent {3}({4}) (nr {5})", ex.Request.GlobalRequestId, ex.Request.ConfigurationId, ex.Request.NodeRequestId, parentRequest.BuildRequest.GlobalRequestId, parentRequest.BuildRequest.ConfigurationId, parentRequest.BuildRequest.NodeRequestId); 363responses.Add(ScheduleResponse.CreateCircularDependencyResponse(nodeId, parentRequest.BuildRequest, ex.Request)); 401ErrorUtilities.VerifyThrow(result.ParentGlobalRequestId == request.Parent.BuildRequest.GlobalRequestId, "Result's parent doesn't match request's parent."); 410ScheduleResponse response = TrySatisfyRequestFromCache(request.Parent.AssignedNode, request.BuildRequest, skippedResultsDoNotCauseCacheMiss: _componentHost.BuildParameters.SkippedResultsDoNotCauseCacheMiss()); 437if (unscheduledRequest.BuildRequest.GlobalRequestId == result.GlobalRequestId) 439TraceScheduler("Request {0} (node request {1}) also satisfied by result.", unscheduledRequest.BuildRequest.GlobalRequestId, unscheduledRequest.BuildRequest.NodeRequestId); 440BuildResult newResult = new BuildResult(unscheduledRequest.BuildRequest, result, null); 453ScheduleResponse response = TrySatisfyRequestFromCache(parentNode, unscheduledRequest.BuildRequest, skippedResultsDoNotCauseCacheMiss: true); 458LogRequestHandledFromCache(unscheduledRequest.BuildRequest, response.BuildResult); 465response = GetResponseForResult(parentNode, unscheduledRequest.BuildRequest, newResult.Clone()); 563if (request.BuildRequest.SubmissionId == submissionId) 851ReadSchedulingPlan(_schedulingData.GetRequestsByHierarchy(null).First().BuildRequest.SubmissionId); 946SchedulingPlan.PlanConfigData configToConsider = _schedulingPlan.GetConfiguration(request.BuildRequest.ConfigurationId); 979AssignUnscheduledRequestsToInProcNode(responses, idleNodes, request => IsTraversalRequest(request.BuildRequest)); 1072int requiredNodeId = _schedulingData.GetAssignedNodeForRequestConfiguration(unscheduledRequest.BuildRequest.ConfigurationId); 1076System.IO.FileInfo f = new FileInfo(_configCache[unscheduledRequest.BuildRequest.ConfigurationId].ProjectFullPath); 1114int requiredNodeId = _schedulingData.GetAssignedNodeForRequestConfiguration(unscheduledRequest.BuildRequest.ConfigurationId); 1118System.IO.FileInfo f = new FileInfo(_configCache[unscheduledRequest.BuildRequest.ConfigurationId].ProjectFullPath); 1156BuildRequest currentRequest = currentSchedulableRequest.BuildRequest; 1330int requiredNodeId = _schedulingData.GetAssignedNodeForRequestConfiguration(request.BuildRequest.ConfigurationId); 1342TraceScheduler("Chose not to assign request {0} to node {2} because its count of configurations ({3}) exceeds the current limit ({4}).", request.BuildRequest.GlobalRequestId, request.BuildRequest.ConfigurationId, nodeId, configurationCountsByNode[nodeId], configurationCountLimit); 1364bool mustSendConfigurationToNode = _availableNodes[nodeId].AssignConfiguration(request.BuildRequest.ConfigurationId); 1368BuildRequestConfiguration config = _configCache[request.BuildRequest.ConfigurationId]; 1376responses.Add(ScheduleResponse.CreateScheduleResponse(nodeId, request.BuildRequest, mustSendConfigurationToNode)); 1377TraceScheduler("Executing request {0} on node {1} with parent {2}", request.BuildRequest.GlobalRequestId, nodeId, (request.Parent == null) ? -1 : request.Parent.BuildRequest.GlobalRequestId); 1454NodeAffinity affinity = GetNodeAffinityForRequest(request.BuildRequest); 1486int assignedNodeForConfiguration = _schedulingData.GetAssignedNodeForRequestConfiguration(request.BuildRequest.ConfigurationId); 1496NodeAffinity affinityRequired = GetNodeAffinityForRequest(request.BuildRequest); 1608_resultsCache.AddResult(new BuildResult(request.BuildRequest, new BuildAbortedException())); 1635blockingRequest.BuildRequest.ConfigurationId == blockedRequest.BuildRequest.ConfigurationId && 1654BuildRequest newRequest = new BuildRequest(parentRequest.BuildRequest.SubmissionId, BuildRequest.ResultsTransferNodeRequestId, parentRequest.BuildRequest.ConfigurationId, Array.Empty<string>(), null, parentRequest.BuildRequest.BuildEventContext, parentRequest.BuildRequest, parentRequest.BuildRequest.BuildRequestDataFlags); 1666BuildRequestConfiguration configuration = _configCache[parentRequest.BuildRequest.ConfigurationId]; 1751existingRequestAffinity = GetNodeAffinityForRequest(existingRequest.BuildRequest); 1802responses.Add(ScheduleResponse.CreateResumeExecutionResponse(parentRequest.AssignedNode, parentRequest.BuildRequest.GlobalRequestId)); 1827TraceScheduler("Unblocking request {0} on node {1}", request.BuildRequest.GlobalRequestId, nodeId); 1830ScheduleResponse response = ScheduleResponse.CreateResumeExecutionResponse(nodeId, request.BuildRequest.GlobalRequestId); 1847ScheduleResponse response = TrySatisfyRequestFromCache(nodeForResults, request.BuildRequest, skippedResultsDoNotCauseCacheMiss: _componentHost.BuildParameters.SkippedResultsDoNotCauseCacheMiss()); 1853LogRequestHandledFromCache(request.BuildRequest, response.BuildResult); 1864LogRequestHandledFromCache(request.BuildRequest, response.Unblocker.Result); 1867TraceScheduler("Reporting results for request {0} with parent {1} to node {2} from cache.", request.BuildRequest.GlobalRequestId, request.BuildRequest.ParentGlobalRequestId, response.NodeId); 1882CheckIfCacheMissOnReferencedProjectIsAllowedAndErrorIfNot(nodeForResults, request.BuildRequest, responses, out _); 2033SchedulableRequest parentRequest = _schedulingData.BlockedRequests.FirstOrDefault(r => r.BuildRequest.GlobalRequestId == request.ParentGlobalRequestId) 2034?? _schedulingData.ExecutingRequests.FirstOrDefault(r => r.BuildRequest.GlobalRequestId == request.ParentGlobalRequestId); 2038configCache.HasConfiguration(parentRequest.BuildRequest.ConfigurationId), 2041BuildRequestConfiguration parentConfiguration = configCache[parentRequest.BuildRequest.ConfigurationId]; 2262if (existingRequest.BuildRequest.Targets.Count == request.Targets.Count) 2264List<string> leftTargets = new List<string>(existingRequest.BuildRequest.Targets); 2280request.GlobalRequestId = existingRequest.BuildRequest.GlobalRequestId; 2334int workId = useConfigurations ? buildEvent.Request.BuildRequest.ConfigurationId : buildEvent.Request.BuildRequest.GlobalRequestId; 2530useConfigurations ? request.BuildRequest.ConfigurationId : request.BuildRequest.GlobalRequestId, 2534_configCache[request.BuildRequest.ConfigurationId].ProjectFullPath, 2535String.Join(", ", request.BuildRequest.Targets)); 2603.BuildRequest.GlobalRequestId) 2782var buildRequest = request.BuildRequest;
BackEnd\Components\Scheduler\SchedulingData.cs (28)
277if (!_configurationToRequests.TryGetValue(request.BuildRequest.ConfigurationId, out requests)) 280_configurationToRequests[request.BuildRequest.ConfigurationId] = requests; 293ErrorUtilities.VerifyThrow(_buildHierarchy.ContainsKey(parent), "Parent doesn't exist in build hierarchy for request {0}", request.BuildRequest.GlobalRequestId); 309_blockedRequests.Remove(request.BuildRequest.GlobalRequestId); 313_yieldingRequests.Remove(request.BuildRequest.GlobalRequestId); 321_executingRequests.Remove(request.BuildRequest.GlobalRequestId); 326_readyRequests.Remove(request.BuildRequest.GlobalRequestId); 345ErrorUtilities.VerifyThrow(!requestsAssignedToNode.Contains(request), "Request {0} is already scheduled to node {1}", request.BuildRequest.GlobalRequestId, request.AssignedNode); 356if (!configurationsAssignedToNode.Contains(request.BuildRequest.ConfigurationId)) 358configurationsAssignedToNode.Add(request.BuildRequest.ConfigurationId); 369ErrorUtilities.VerifyThrow(!_blockedRequests.ContainsKey(request.BuildRequest.GlobalRequestId), "Request with global id {0} is already blocked!"); 370_blockedRequests[request.BuildRequest.GlobalRequestId] = request; 374ErrorUtilities.VerifyThrow(!_yieldingRequests.ContainsKey(request.BuildRequest.GlobalRequestId), "Request with global id {0} is already yielded!"); 375_yieldingRequests[request.BuildRequest.GlobalRequestId] = request; 379ErrorUtilities.VerifyThrow(_configurationToRequests.ContainsKey(request.BuildRequest.ConfigurationId), "Configuration {0} never had requests assigned to it.", request.BuildRequest.ConfigurationId); 380ErrorUtilities.VerifyThrow(_configurationToRequests[request.BuildRequest.ConfigurationId].Count > 0, "Configuration {0} has no requests assigned to it.", request.BuildRequest.ConfigurationId); 381_configurationToRequests[request.BuildRequest.ConfigurationId].Remove(request); 391ErrorUtilities.VerifyThrow(!_executingRequests.ContainsKey(request.BuildRequest.GlobalRequestId), "Request with global id {0} is already executing!"); 394_executingRequests[request.BuildRequest.GlobalRequestId] = request; 396_configurationToNode[request.BuildRequest.ConfigurationId] = request.AssignedNode; 405ErrorUtilities.VerifyThrow(!_readyRequests.ContainsKey(request.BuildRequest.GlobalRequestId), "Request with global id {0} is already ready!"); 406_readyRequests[request.BuildRequest.GlobalRequestId] = request; 414ErrorUtilities.VerifyThrow(!readyRequestsOnNode.Contains(request), "Request with global id {0} is already marked as ready on node {1}", request.BuildRequest.GlobalRequestId, request.AssignedNode); 419ErrorUtilities.ThrowInternalError("Request with global id {0} cannot transition to the Unscheduled state", request.BuildRequest.GlobalRequestId); 562return InternalGetScheduledRequestByGlobalRequestId(request.BuildRequest.GlobalRequestId) != null; 651return CanScheduleConfigurationToNode(request.BuildRequest.ConfigurationId, nodeId);
BackEnd\Components\Scheduler\SchedulingPlan.cs (6)
211return _configCache[rootRequest.BuildRequest.ConfigurationId].ProjectFullPath + ".buildplan"; 430if (request.BuildRequest.SubmissionId == submissionId) 444file.Write(request.BuildRequest.ConfigurationId); 447file.Write(" {0}", child.BuildRequest.ConfigurationId); 467accumulatedTimeByConfiguration.TryGetValue(request.BuildRequest.ConfigurationId, out accumulatedTime); 468accumulatedTimeByConfiguration[request.BuildRequest.ConfigurationId] = accumulatedTime + request.GetTimeSpentInState(SchedulableRequestState.Executing).TotalMilliseconds;