Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-17257

EC2 plugin fails to launch slave (IndexOutOfBoundsException)

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Major Major
    • ec2-plugin
    • Ubuntu 12.04 LTS (64-bit)
      Jenkins 1.505
      EC2 plugin from GitHub repo (commit 76c95f9c4a02917d09e28e4e4efa705c845f30df)

      Using the latest dev version of the EC2 plugin from GitHub, the launching of slaves sometimes fails due to an IndexOutOfBoundsException.

      Relevant stack trace from Jenkins logs:

      WARNING: Provisioned slave QIIME 1.6.0 AMI (Ubuntu 64-bit) (ami-10b12f79) failed to launch
      java.util.concurrent.ExecutionException: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
              at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
              at java.util.concurrent.FutureTask.get(FutureTask.java:111)
              at hudson.plugins.ec2.EC2Cloud$1.call(EC2Cloud.java:344)
              at hudson.plugins.ec2.EC2Cloud$1.call(EC2Cloud.java:329)
              at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
              at java.util.concurrent.FutureTask.run(FutureTask.java:166)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:679)
      Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
              at java.util.ArrayList.rangeCheck(ArrayList.java:571)
              at java.util.ArrayList.get(ArrayList.java:349)
              at hudson.plugins.ec2.EC2Computer._describeInstanceOnce(EC2Computer.java:142)
              at hudson.plugins.ec2.EC2Computer._describeInstance(EC2Computer.java:125)
              at hudson.plugins.ec2.EC2Computer.getState(EC2Computer.java:101)
              at hudson.plugins.ec2.EC2ComputerLauncher.launch(EC2ComputerLauncher.java:56)
              at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:222)
              ... 5 more

      This results in a disconnected node (from Jenkins' point of view) but the instance is still running on Amazon EC2. The Jenkins logs indicate that the slave is idle, but it is never terminated by the EC2 plugin, even though I have the idle termination time set to 10 minutes:

      ...
      QIIME 1.6.0 AMI (Ubuntu 64-bit) (i-54fb093e) idle: 32412220
      QIIME 1.6.0 AMI (Ubuntu 64-bit) (i-54fb093e) idle: 32532221
      ...

      Other slaves using the same AMI are automatically launched just fine after this failure occurs.

            francisu Francis Upton
            jrrideout Jai Ram Rideout
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: