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

Port allocation blocks jobs from executing concurrently

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Blocker Blocker
    • port-allocator-plugin
    • None
    • Jenkins 1.523, port-allocator 1.6

      I'm assigning one port in configuration, called Arquillian. When using version 1.6 of port allocator, only one job starts execution and others are blocked by it.

      Thread dump had following:

      "Executor #1 for virt-slave1 : executing Project #3464" Id=38 Group=main WAITING on hudson.model.Queue@67a7efcb
              at java.lang.Object.wait(Native Method)
              -  waiting on hudson.model.Queue@67a7efcb
              at java.lang.Object.wait(Object.java:503)
              at hudson.model.ResourceController.execute(ResourceController.java:80)
              at hudson.model.Executor.run(Executor.java:247)
      
      
      "Executor #5 for virt-slave1 : executing Project #3465" Id=42 Group=main WAITING on hudson.model.Queue@67a7efcb
              at java.lang.Object.wait(Native Method)
              -  waiting on hudson.model.Queue@67a7efcb
              at java.lang.Object.wait(Object.java:503)
              at hudson.model.ResourceController.execute(ResourceController.java:80)
              at hudson.model.Executor.run(Executor.java:247)
      
      "Executor #4 for virt-slave2 : executing Project #3463 / waiting for hudson.remoting.Channel@279eb40d:virt-slave2" Id=48 Group=main TIMED_WAITING on hudson.remoting.UserRequest@20f46461
              at java.lang.Object.wait(Native Method)
              -  waiting on hudson.remoting.UserRequest@20f46461
              at hudson.remoting.Request.call(Request.java:146)
              at hudson.remoting.Channel.call(Channel.java:722)
              at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:162)
              at com.sun.proxy.$Proxy32.join(Unknown Source)
              at hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:925)
              at hudson.Launcher$ProcStarter.join(Launcher.java:360)
              at hudson.tasks.Maven.perform(Maven.java:327)
              at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
              at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)
              at hudson.model.Build$BuildExecution.build(Build.java:199)
              at hudson.model.Build$BuildExecution.doRun(Build.java:160)
              at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:586)
              at hudson.model.Run.execute(Run.java:1593)
              at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
              at hudson.model.ResourceController.execute(ResourceController.java:88)
              at hudson.model.Executor.run(Executor.java:247)
      
      Executor #5 for virt-slave1 : executing Project #3465
      
      "Executor #5 for virt-slave1 : executing Project #3465" Id=42 Group=main WAITING on hudson.model.Queue@67a7efcb
              at java.lang.Object.wait(Native Method)
              -  waiting on hudson.model.Queue@67a7efcb
              at java.lang.Object.wait(Object.java:503)
              at hudson.model.ResourceController.execute(ResourceController.java:80)
              at hudson.model.Executor.run(Executor.java:247)
      

      After adding https://github.com/jenkinsci/jenkins/pull/853, log got following lines:

      Jul 17, 2013 7:23:45 AM hudson.model.ResourceList _getConflict
      INFO: Collision with standalone port ARQUILLIAN(1)=1 and standalone port ARQUILLIAN(1)
      

      Downgrading to version 1.5 of port allocator solved the problem

            oldelvet Richard Mortimer
            jyrkip Jyrki Puttonen
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: