159 references to CommunicationsUtilities
Microsoft.Build (150)
BackEnd\BuildManager\BuildParameters.cs (7)
281
?
CommunicationsUtilities
.GetEnvironmentVariables()
621
internal static int ThreadStackSize =>
CommunicationsUtilities
.GetIntegerVariableOrDefault(
627
internal static int EndpointShutdownTimeout =>
CommunicationsUtilities
.GetIntegerVariableOrDefault(
633
internal static int EngineShutdownTimeout =>
CommunicationsUtilities
.GetIntegerVariableOrDefault(
645
internal static int LoggingThreadShutdownTimeout =>
CommunicationsUtilities
.GetIntegerVariableOrDefault(
651
internal static int RequestBuilderShutdownTimeout =>
CommunicationsUtilities
.GetIntegerVariableOrDefault(
1002
_buildProcessEnvironment =
CommunicationsUtilities
.GetEnvironmentVariables();
BackEnd\Client\MSBuildClient.cs (29)
172
CommunicationsUtilities
.Trace("Executing build with command line '{0}'", descriptiveCommandLine);
183
CommunicationsUtilities
.Trace("Server was not running. Starting server now.");
195
CommunicationsUtilities
.Trace("Server is busy, falling back to former behavior.");
210
CommunicationsUtilities
.Trace("Failed to obtain the current build server state: {0}", ex);
211
CommunicationsUtilities
.Trace("HResult: {0}.", ex.HResult);
229
CommunicationsUtilities
.Trace("Build finished.");
255
CommunicationsUtilities
.Trace("Trying shutdown server node.");
260
CommunicationsUtilities
.Trace("No need to shutdown server node for it is not running.");
269
CommunicationsUtilities
.Trace("Server cannot be shut down for it is not idle.");
276
CommunicationsUtilities
.Trace("Client cannot connect to idle server to shut it down.");
282
CommunicationsUtilities
.Trace("Failed to send shutdown command to the server.");
297
CommunicationsUtilities
.Trace("Wait for server to be not busy - will retry soon...");
369
CommunicationsUtilities
.Trace("MSBuild client error: problem during packet handling occurred: {0}.", ex);
394
CommunicationsUtilities
.Trace("MSBuild client warning: problem during querying console buffer width.", ex);
427
CommunicationsUtilities
.Trace("Command packet of type '{0}' sent...", packet.Type);
431
CommunicationsUtilities
.Trace("Failed to send command packet of type '{0}' to server: {1}", packet?.Type.ToString() ?? "Unknown", ex);
455
CommunicationsUtilities
.Trace("Another process launching the msbuild server, falling back to former behavior.");
462
CommunicationsUtilities
.Trace("Failed to obtain the current build server state: {0}", ex);
463
CommunicationsUtilities
.Trace("HResult: {0}.", ex.HResult);
476
CommunicationsUtilities
.Trace("Starting Server...");
478
CommunicationsUtilities
.Trace("Server started with PID: {0}", msbuildProcess?.Id);
482
CommunicationsUtilities
.Trace("Failed to launch the msbuild server: {0}", ex);
496
CommunicationsUtilities
.Trace("Sending shutdown command to server.");
539
return new ServerNodeHandshake(
CommunicationsUtilities
.GetHandshakeOptions(taskHost: false, architectureFlagToSet: XMakeAttributes.GetCurrentMSBuildArchitecture()));
549
CommunicationsUtilities
.Trace("MSBuild client sent cancellation command.");
559
CommunicationsUtilities
.Trace("MSBuild client error: packet pump unexpectedly shut down: {0}", packetPump.PacketPumpException);
604
CommunicationsUtilities
.Trace("Build response received: exit code '{0}', exit type '{1}'", response.ExitCode, response.ExitType);
630
CommunicationsUtilities
.Trace("Retrying to connect to server after {0} ms", sw.ElapsedMilliseconds);
638
CommunicationsUtilities
.Trace("Failed to connect to server: {0}", ex);
BackEnd\Client\MSBuildClientPacketPump.cs (5)
202
CommunicationsUtilities
.Trace("Entering read loop.");
234
CommunicationsUtilities
.Trace("Shutdown message pump thread.");
295
CommunicationsUtilities
.Trace("Packet factory failed to receive package. Exception while deserializing packet {0}.", packetType);
324
CommunicationsUtilities
.Trace("Exception occurred in the packet pump: {0}", ex);
328
CommunicationsUtilities
.Trace("Ending read loop.");
BackEnd\Components\Communications\DetouredNodeLauncher.cs (2)
72
CommunicationsUtilities
.Trace("Launching node from {0}", msbuildLocation);
139
CommunicationsUtilities
.Trace("Successfully launched {1} node with PID {0}", sp.ProcessId, exeName);
BackEnd\Components\Communications\NodeEndpointOutOfProc.cs (1)
36
HandshakeOptions handshakeOptions =
CommunicationsUtilities
.GetHandshakeOptions(
BackEnd\Components\Communications\NodeLauncher.cs (5)
92
CommunicationsUtilities
.Trace("Launching node from {0}", msbuildLocation);
125
CommunicationsUtilities
.Trace(
134
CommunicationsUtilities
.Trace("Successfully launched {1} node with PID {0}", process.Id, exeName);
167
CommunicationsUtilities
.Trace(
189
CommunicationsUtilities
.Trace("Successfully launched {1} node with PID {0}", childProcessId, exeName);
BackEnd\Components\Communications\NodeProviderInProc.cs (1)
406
int connectionTimeout =
CommunicationsUtilities
.NodeConnectionTimeout;
BackEnd\Components\Communications\NodeProviderOutOfProc.cs (4)
72
CommunicationsUtilities
.Trace("MSBUILDNODEHANDSHAKESALT=\"{0}\", msbuildDirectory=\"{1}\", enableNodeReuse={2}, enableLowPriority={3}", Traits.MSBuildNodeHandshakeSalt, BuildEnvironmentHelper.Instance.MSBuildToolsDirectory32, enableNodeReuse, enableLowPriority);
73
return new Handshake(
CommunicationsUtilities
.GetHandshakeOptions(taskHost: false, architectureFlagToSet: XMakeAttributes.GetCurrentMSBuildArchitecture(), nodeReuse: enableNodeReuse, lowPriority: enableLowPriority));
99
CommunicationsUtilities
.Trace("Starting to acquire {1} new or existing node(s) to establish nodes from ID {0} to {2}...", nextNodeId, numberOfNodesToCreate, nextNodeId + numberOfNodesToCreate - 1);
101
Handshake hostHandshake = new(
CommunicationsUtilities
.GetHandshakeOptions(taskHost: false, architectureFlagToSet: XMakeAttributes.GetCurrentMSBuildArchitecture(), nodeReuse: ComponentHost.BuildParameters.EnableNodeReuse, lowPriority: ComponentHost.BuildParameters.LowPriority));
BackEnd\Components\Communications\NodeProviderOutOfProcBase.cs (30)
175
CommunicationsUtilities
.Trace("Shutting down node with pid = {0}", nodeProcess.Id);
234
CommunicationsUtilities
.Trace("Attempting to connect to {1} existing processes '{0}'...", expectedProcessName, possibleRunningNodesList.Count);
248
CommunicationsUtilities
.Trace("FAILED TO CONNECT TO A CHILD NODE");
268
CommunicationsUtilities
.Trace("Trying to connect to existing process {2} with id {1} to establish node {0}...", nodeId, nodeToReuse.Id, nodeToReuse.ProcessName);
289
CommunicationsUtilities
.Trace("Successfully connected to existed node {0} which is PID {1}", nodeId, nodeToReuse.Id);
307
CommunicationsUtilities
.Trace("Could not connect to existing process, now creating a process...");
325
CommunicationsUtilities
.Trace(
349
CommunicationsUtilities
.Trace("Successfully connected to created node {0} which is PID {1}", nodeId, msbuildProcess.Id);
361
CommunicationsUtilities
.Trace("Could not connect to node with PID {0}; it has exited with exit code {1}. This can indicate a crash at startup", msbuildProcess.Id, msbuildProcess.ExitCode);
367
CommunicationsUtilities
.Trace("Could not connect to node with PID {0}; it has exited with unknown exit code. This can indicate a crash at startup", msbuildProcess.Id);
373
CommunicationsUtilities
.Trace("Could not connect to node with PID {0}; it is still running. This can occur when two multiprocess builds run in parallel and the other one 'stole' this node", msbuildProcess.Id);
439
CommunicationsUtilities
.Trace("The remote pipe owner {0} does not match {1}", remoteOwner.Value, identifier.Value);
464
CommunicationsUtilities
.Trace("Attempting connect to PID {0} with pipe {1} with timeout {2} ms", nodeProcessId, pipeName, timeout);
478
CommunicationsUtilities
.Trace("Failed to connect to pipe {0}. {1}", pipeName, e.Message.TrimEnd());
513
CommunicationsUtilities
.Trace("Writing handshake part {0} ({1}) to pipe {2}", i, handshakeComponents[i], pipeName);
520
CommunicationsUtilities
.Trace("Reading handshake from pipe {0}", pipeName);
528
CommunicationsUtilities
.Trace("Successfully connected to pipe {0}...!", pipeName);
789
CommunicationsUtilities
.Trace(context._nodeId, "EXCEPTION in SendData: {0}", e);
851
CommunicationsUtilities
.Trace("Waiting for node with pid = {0} to exit", _process.Id);
879
CommunicationsUtilities
.Trace("Killing node with pid = {0}", _process.Id);
905
CommunicationsUtilities
.Trace(_nodeId, "COMMUNICATIONS ERROR (HRC) Node: {0} Process: {1} Bytes Read: {2} Expected: {3}", _nodeId, _process.Id, bytesRead, _headerByte.Length);
910
CommunicationsUtilities
.Trace(_nodeId, " Child Process {0} has exited.", _process.Id);
914
CommunicationsUtilities
.Trace(_nodeId, " Child Process {0} is still running.", _process.Id);
919
CommunicationsUtilities
.Trace(_nodeId, "Unable to retrieve remote process information. {0}", e);
948
CommunicationsUtilities
.Trace(_nodeId, "Hit CLR bug #825607: called back twice on same async result; ignoring");
959
CommunicationsUtilities
.Trace(_nodeId, "EXCEPTION in HeaderReadComplete: {0}", e);
981
CommunicationsUtilities
.Trace(_nodeId, "Bad packet read for packet {0} - Expected {1} bytes, got {2}", packetType, packetLength, bytesRead);
1003
CommunicationsUtilities
.Trace(_nodeId, "EXCEPTION in ReadAndRoutPacket: {0}", e);
1034
CommunicationsUtilities
.Trace(_nodeId, "Hit CLR bug #825607: called back twice on same async result; ignoring");
1045
CommunicationsUtilities
.Trace(_nodeId, "EXCEPTION in BodyReadComplete (Reading): {0}", e);
BackEnd\Components\Communications\NodeProviderOutOfProcTaskHost.cs (1)
561
CommunicationsUtilities
.Trace("For a host context of {0}, spawning executable from {1}.", hostContext.ToString(), msbuildLocation ?? "MSBuild.exe");
BackEnd\Components\RequestBuilder\RequestBuilder.cs (3)
906
entryToComplete.RequestConfiguration.SavedEnvironmentVariables =
CommunicationsUtilities
.GetEnvironmentVariables();
1337
_requestEntry.RequestConfiguration.SavedEnvironmentVariables =
CommunicationsUtilities
.GetEnvironmentVariables();
1404
IDictionary<string, string> currentEnvironment =
CommunicationsUtilities
.GetEnvironmentVariables();
BackEnd\Node\InProcNode.cs (2)
349
CommunicationsUtilities
.SetEnvironment(_savedEnvironment);
475
_savedEnvironment =
CommunicationsUtilities
.GetEnvironmentVariables();
BackEnd\Node\OutOfProcNode.cs (5)
457
CommunicationsUtilities
.Trace("Shutting down with reason: {0}, and exception: {1}.", _shutdownReason, _shutdownException);
496
CommunicationsUtilities
.SetEnvironment(_savedEnvironment);
500
CommunicationsUtilities
.Trace("Failed to restore the original environment: {0}.", ex);
537
CommunicationsUtilities
.Trace("Shut down complete.");
712
_savedEnvironment =
CommunicationsUtilities
.GetEnvironmentVariables();
BackEnd\Node\OutOfProcServerNode.cs (7)
102
CommunicationsUtilities
.GetHandshakeOptions(taskHost: false, architectureFlagToSet: XMakeAttributes.GetCurrentMSBuildArchitecture()));
108
CommunicationsUtilities
.Trace("Starting new server node with handshake {0}", handshake);
256
CommunicationsUtilities
.Trace("Shutting down with reason: {0}, and exception: {1}.", _shutdownReason, _shutdownException);
267
CommunicationsUtilities
.Trace("Shut down complete.");
333
CommunicationsUtilities
.Trace("Received request to cancel build running on MSBuild Server. MSBuild server will shutdown.}");
357
CommunicationsUtilities
.Trace("Building with MSBuild server with command line {0}", command.CommandLine);
373
CommunicationsUtilities
.SetEnvironment(command.BuildProcessEnvironment);
CommunicationsUtilities.cs (21)
96
const int handshakeVersion = (int)
CommunicationsUtilities
.handshakeVersion;
101
CommunicationsUtilities
.Trace("Building handshake for node type {0}, (version {1}): options {2}.", nodeType, handshakeVersion, options);
104
CommunicationsUtilities
.Trace("Handshake salt is {0}", handshakeSalt);
106
CommunicationsUtilities
.Trace("Tools directory root is {0}", toolsDirectory);
107
salt =
CommunicationsUtilities
.GetHashCode($"{handshakeSalt}{toolsDirectory}");
127
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(options),
128
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(salt),
129
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionMajor),
130
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionMinor),
131
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionBuild),
132
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionPrivate),
133
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(sessionId)
139
public virtual byte? ExpectedVersionInFirstByte =>
CommunicationsUtilities
.handshakeVersion;
160
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(options),
161
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(salt),
162
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionMajor),
163
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionMinor),
164
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionBuild),
165
CommunicationsUtilities
.AvoidEndOfHandshakeSignal(fileVersionPrivate),
501
CommunicationsUtilities
.Trace("Handshake failed on part {0}. Probably the client is a different MSBuild build.", valueRead);
505
CommunicationsUtilities
.Trace("Expected end of handshake signal but received {0}. Probably the host is a different MSBuild build.", valueRead);
Evaluation\IntrinsicFunctions.cs (3)
435
=>
CommunicationsUtilities
.GetHashCode(toHash);
449
StringHashingAlgorithm.Legacy =>
CommunicationsUtilities
.GetHashCode(toHash),
509
HandshakeOptions desiredContext =
CommunicationsUtilities
.GetHandshakeOptions(taskHost: true, taskHostParameters: parameters);
Instance\TaskFactories\TaskHostTask.cs (3)
271
CommunicationsUtilities
.GetEnvironmentVariables(),
294
_requiredContext =
CommunicationsUtilities
.GetHandshakeOptions(taskHost: true, taskHostParameters: _taskHostParameters);
465
CommunicationsUtilities
.SetEnvironment(taskHostTaskComplete.BuildProcessEnvironment);
NodeEndpointOutOfProcBase.cs (20)
275
CommunicationsUtilities
.Trace("Changing link status from {0} to {1}", _status.ToString(), newStatus.ToString());
366
int waitTimeRemaining = Math.Max(0,
CommunicationsUtilities
.NodeConnectionTimeout - (int)usedWaitTime.TotalMilliseconds);
373
CommunicationsUtilities
.Trace("Waiting for connection {0} ms...", waitTimeRemaining);
382
CommunicationsUtilities
.Trace("Connection timed out waiting a host to contact us. Exiting comm thread.");
387
CommunicationsUtilities
.Trace("Parent started connecting. Reading handshake from parent");
403
byteToAccept: i == 0 ? (byte?)
CommunicationsUtilities
.handshakeVersion : null /* this will disconnect a < 16.8 host; it expects leading 00 or F5 or 06. 0x00 is a wildcard */
412
CommunicationsUtilities
.Trace("Handshake failed. Received {0} from host not {1}. Probably the host is a different MSBuild build.", handshakePart, handshakeComponents[i]);
427
CommunicationsUtilities
.Trace("Successfully connected to parent.");
440
CommunicationsUtilities
.Trace("Handshake failed. Host user is {0} but we were created by {1}.", (clientIdentity == null) ? "<unknown>" : clientIdentity.Name, currentIdentity.Name);
454
CommunicationsUtilities
.Trace("Client connection failed but we will wait for another connection. Exception: {0}", e.Message);
476
CommunicationsUtilities
.Trace("Client connection failed. Exiting comm thread. {0}", e);
493
CommunicationsUtilities
.Trace("Ending read loop");
522
CommunicationsUtilities
.Trace("Entering read loop.");
565
CommunicationsUtilities
.Trace("Exception reading from server. {0}", e);
579
CommunicationsUtilities
.Trace("Parent disconnected gracefully.");
586
CommunicationsUtilities
.Trace("Parent disconnected abruptly.");
592
CommunicationsUtilities
.Trace("Incomplete header read from server. {0} of {1} bytes read", bytesRead, headerByte.Length);
609
CommunicationsUtilities
.Trace("Exception while deserializing packet {0}: {1}", packetType, e);
666
CommunicationsUtilities
.Trace("Exception while serializing packets: {0}", e);
675
CommunicationsUtilities
.Trace("Disconnecting voluntarily");
Utilities\Utilities.cs (1)
474
IDictionary<string, string> environmentVariablesBag =
CommunicationsUtilities
.GetEnvironmentVariables();
Microsoft.Build.Engine.UnitTests (9)
CommunicationUtilities_Tests.cs (9)
9
using CommunicationsUtilities = Microsoft.Build.Internal.
CommunicationsUtilities
;
21
IDictionary<string, string> envVars =
CommunicationsUtilities
.GetEnvironmentVariables();
45
CommunicationsUtilities
.SetEnvironmentVariable(testName1, testValue);
48
IDictionary<string, string> envVars =
CommunicationsUtilities
.GetEnvironmentVariables();
50
CommunicationsUtilities
.SetEnvironmentVariable(testName1, null);
51
CommunicationsUtilities
.SetEnvironmentVariable(testName2, testValue);
53
CommunicationsUtilities
.SetEnvironment(envVars);
60
CommunicationsUtilities
.SetEnvironmentVariable(testName1, null);
61
CommunicationsUtilities
.SetEnvironmentVariable(testName2, null);