Version Differences for Unable to recover the command: the agent could not locate the command result.

(Shortened and didn't use the term "paradoxical")
Line 1:
- What constitutes for a 'duplicate agent' is when two of the same agent are connected to the anthillpro server. Though newer versions of anthillpro have checks against this to prevent duplicates from happening, nothing is flawless. If a job is failing, and has something similar to the error below, you might have a duplicate agent running.   + This may be due to a 'duplicate agent'. Each agent is assigned a unique endpoint ID value. If ''two or more'' agents have the same endpoint ID, then both agents will attempt to run the jobs sent to that endpoint and you may see errors like:  
       
    + <pre>Unable to recover the command: the agent could not locate the command result.</pre>  
    + <pre>result.ser (No such file or directory)</pre>  
    + <pre>result.ser (The system cannot find the path specified)</pre>  
       
  = Error Examples =    = Error Examples = 
       
Line 119:
       
  Transfer of logs was not successful. Server returned status '401'.</pre>    Transfer of logs was not successful. Server returned status '401'.</pre> 
       
- == General Indicators ==      
       
- <pre>Unable to recover the command: the agent could not locate the command result.</pre>      
- <pre>result.ser (No such file or directory)</pre>      
- <pre>result.ser (The system cannot find the path specified)</pre>      
       
- = Background =      
       
- Each agent is assigned a unique endpoint ID value. When the agents connect to the server, the server reads these endpoints and stores it in the database. Each agent is then referenced by its endpoint, and when work is to be dispatched to an agent, it is identified by the endpoint. This explains why you can have two agents with the same name, but different agents altogether because their endpoints are different. If somehow two agents connect to the server with the same endpoint, chaos ensues when trying to run any builds. Examples of how two agents might connect with the same endpoint on the same server include:      
       
- * '''PRE-3.8''': The same agent was started twice with ah3agent run/start      
- * '''PRE-3.8''': The same agent was started twice under different user accounts      
- * '''PRE-3.8''': The same agent was started as a ''Windows Service'' and from the ''command prompt''      
- * A (virtual) machine has been cloned across the network and the agent on that machine contains the same '''endpoint ID''' as another VM's agent. Both agents are started and connected to server.      
- * Two different agents connected to the server have manually had their installed.properties file edited to have an identical '''endpoint ID'''.      
- * On a ''very rare case'', the agent-installer could randomly generate an '''endpoint ID''' that matches another agent.      
       
- = Scenario & Cause =      
       
- Both agents are connected to the server. The server dispatches a job to run on the agent. Since both agents are identical, both attempt to run the job (which is sent over as a serialized command). However since only one of the agents actually received the serialized command to run, an error will be thrown stating that the other agent cannot run the command (since it doesn't exist). This is paradoxical in itself since only one agent should ever have this version of the serialized command running.