-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
Jenkins 1.590 on Linux with Swarm Plugin 1.21
In the swarm server-side slave creation logic, when a node of the provided name already exists, '-$IP' is appended to the end in an effort to end with a unique name (see https://github.com/jenkinsci/swarm-plugin/blob/master/plugin/src/main/java/hudson/plugins/swarm/PluginImpl.java#L59)
However, as far as I can tell, that new name is never provided to the slave, so it doesn't seem like it'd be possible for the slave to connect with that name, and in my experience I've seen hundreds of collision-avoidance nodes in this setup, and have never once seen one online or connected in any way.
These dead "hyphen nodes" don't hurt running builds, but they are visual noise and false positives in our offline slave metrics, so it'd be nice if they could be avoided.
That's actually of a high priority to some... All it takes to take down a cluster is plug out the wire for a second, Jenkins swarm clients loose connections and then try to reconnect, while Jenkins has not yet forgot about the previous slaves. I think that checking if a node (slave in my dictionary) is online should be done more often and better, especially when there are name collisions.