Details
-
Bug
-
Status: Resolved (View Workflow)
-
Major
-
Resolution: Fixed
-
ec2-plugin 1.23
-
-
1.62
Description
The ec2-plugin will treat a still-launching node as idle (because it has no jbs running) and will thus shut it down if its idle timeout expires.
This means that if the idle timeout for a node is shorter than the time it takes to do one-off configuration on first launch, it will be shut down before it finishes starting up, aborting any init script that might be in progress.
That's a clear bug - a node isn't idle when it's launching, and shouldn't be idled out until it's first made a connection with its slave agent.
Attachments
Issue Links
- is related to
-
JENKINS-43628 Jenkins slaves were started and stopped during master restart
-
- Fixed but Unreleased
-
-
JENKINS-23787 EC2-plugin not spooling up stopped nodes - "still in the queue ... all nodes of label ... are offline"
-
- Closed
-
Code changed in jenkins
User: Craig Ringer
Path:
src/main/java/hudson/plugins/ec2/EC2RetentionStrategy.java
http://jenkins-ci.org/commit/ec2-plugin/d0cd0db5b845c747607a60759eebb7d31e4ea32b
Log:
Prevent nodes that are still starting up from being idle-stopped
Per
JENKINS-23792, the EC2 plugin will shut down nodes that're still startingup if the idle timeout is shorter than the time the node takes to go from
launch request to successfully starting its first job on an executor.
To prevent this, don't perform idle shutdown on a node that is marked offline.
When it comes online, executors will be created and the new idle time will
become the executor creation time, effectively resetting the timer.