1 write to _availableNodes
Microsoft.Build (1)
BackEnd\Components\Scheduler\Scheduler.cs (1)
586
_availableNodes
= new Dictionary<int, NodeInfo>(8);
25 references to _availableNodes
Microsoft.Build (25)
BackEnd\Components\Scheduler\Scheduler.cs (25)
536
_availableNodes
[nodeInfo.NodeId] = nodeInfo;
747
HashSet<int> idleNodes = new HashSet<int>(
_availableNodes
.Count);
748
foreach (int availableNodeId in
_availableNodes
.Keys)
773
if (
_availableNodes
.Count > 0)
829
TraceScheduler("Requests scheduled: {0} Unassigned Requests: {1} Blocked Requests: {2} Unblockable Requests: {3} Free Nodes: {4}/{5} Responses: {6}", nodesFreeToDoWorkPriorToScheduling - idleNodes.Count, _schedulingData.UnscheduledRequestsCount, _schedulingData.BlockedRequestsCount, _schedulingData.ReadyRequestsCount, idleNodes.Count,
_availableNodes
.Count, responses.Count);
1079
IEnumerable<int> nodesByConfigurationCountAscending =
_availableNodes
.Keys.OrderBy(x => _schedulingData.GetConfigurationsCountByNode(x, excludeTraversals: true, _configCache));
1219
if (
_availableNodes
[nodeId].CanServiceRequestWithAffinity(nodeAffinity))
1344
Dictionary<int, int> configurationCountsByNode = new Dictionary<int, int>(
_availableNodes
.Count);
1350
foreach (int availableNodeId in
_availableNodes
.Keys)
1356
configurationCountLimit = Math.Max(1, (int)Math.Ceiling(configurationCountLimit * _customSchedulerForSQLConfigurationLimitMultiplier /
_availableNodes
.Count));
1359
List<int> nodesByConfigurationCountAscending = new List<int>(
_availableNodes
.Keys);
1417
bool mustSendConfigurationToNode =
_availableNodes
[nodeId].AssignConfiguration(request.BuildRequest.ConfigurationId);
1508
bool result =
_availableNodes
[nodeId].CanServiceRequestWithAffinity(affinity);
1791
if (!
_availableNodes
[assignedNodeId].CanServiceRequestWithAffinity(GetNodeAffinityForRequest(request)))
1801
existingRequestAffinity = (
_availableNodes
[assignedNodeId].ProviderType == NodeProviderType.InProc) ? NodeAffinity.InProc : NodeAffinity.OutOfProc;
1976
foreach (int nodeId in
_availableNodes
.Keys)
2304
foreach (NodeInfo node in
_availableNodes
.Values)
2403
int[] currentWork = new int[
_availableNodes
.Count];
2410
TimeSpan[] nodeActiveTimes = new TimeSpan[
_availableNodes
.Count];
2411
DateTime[] nodeStartTimes = new DateTime[
_availableNodes
.Count];
2414
Dictionary<int, int> availableNodeIdsToIndex = new Dictionary<int, int>(
_availableNodes
.Count);
2415
int[] indexToAvailableNodeId = new int[
_availableNodes
.Count];
2418
foreach (int availableNodeId in
_availableNodes
.Keys)
2529
loggingService.LogComment(context, MessageImportance.Normal, "NodeUtilizationSummary", utilitzationPercentages.ToString(), (utilizationAverage / (double)
_availableNodes
.Count) * 100);
2725
foreach (int nodeId in
_availableNodes
.Keys)