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

Lock an Executor without creating a Thread

    XMLWordPrintable

Details

    Description

      Currently WorkflowRun.waitForCompletion spins on a thread just so it can hold a (flyweight) Executor open. Similarly, ExecutorStepExecution.PlaceholderTask spins just to hold a (heavyweight) Executor open. These are wasteful. There should be an optional Task or Executable interface that can run asynchronously, without literally consuming a native Thread for each one.

      Attachments

        Issue Links

          Activity

            Code changed in jenkins
            User: Jesse Glick
            Path:
            core/src/main/java/hudson/model/AbstractBuild.java
            core/src/main/java/hudson/model/Computer.java
            core/src/main/java/hudson/model/Executor.java
            core/src/main/java/hudson/model/OneOffExecutor.java
            core/src/main/java/hudson/model/Queue.java
            core/src/main/java/hudson/model/ResourceController.java
            core/src/main/java/hudson/model/queue/WorkUnitContext.java
            core/src/main/java/jenkins/model/queue/Executable2.java
            http://jenkins-ci.org/commit/jenkins/46a900f4cb468853c5dca844d258b5b862c3a8bf
            Log:
            JENKINS-25938 Introduced AsynchronousExecutable.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/main/java/hudson/model/AbstractBuild.java core/src/main/java/hudson/model/Computer.java core/src/main/java/hudson/model/Executor.java core/src/main/java/hudson/model/OneOffExecutor.java core/src/main/java/hudson/model/Queue.java core/src/main/java/hudson/model/ResourceController.java core/src/main/java/hudson/model/queue/WorkUnitContext.java core/src/main/java/jenkins/model/queue/Executable2.java http://jenkins-ci.org/commit/jenkins/46a900f4cb468853c5dca844d258b5b862c3a8bf Log: JENKINS-25938 Introduced AsynchronousExecutable.
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #4029
            JENKINS-25938 Introduced AsynchronousExecutable. (Revision 46a900f4cb468853c5dca844d258b5b862c3a8bf)

            Result = SUCCESS
            jesse glick : 46a900f4cb468853c5dca844d258b5b862c3a8bf
            Files :

            • core/src/main/java/hudson/model/OneOffExecutor.java
            • core/src/main/java/hudson/model/Queue.java
            • core/src/main/java/hudson/model/Executor.java
            • core/src/main/java/hudson/model/AbstractBuild.java
            • core/src/main/java/hudson/model/Computer.java
            • core/src/main/java/jenkins/model/queue/Executable2.java
            • core/src/main/java/hudson/model/ResourceController.java
            • core/src/main/java/hudson/model/queue/WorkUnitContext.java
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #4029 JENKINS-25938 Introduced AsynchronousExecutable. (Revision 46a900f4cb468853c5dca844d258b5b862c3a8bf) Result = SUCCESS jesse glick : 46a900f4cb468853c5dca844d258b5b862c3a8bf Files : core/src/main/java/hudson/model/OneOffExecutor.java core/src/main/java/hudson/model/Queue.java core/src/main/java/hudson/model/Executor.java core/src/main/java/hudson/model/AbstractBuild.java core/src/main/java/hudson/model/Computer.java core/src/main/java/jenkins/model/queue/Executable2.java core/src/main/java/hudson/model/ResourceController.java core/src/main/java/hudson/model/queue/WorkUnitContext.java
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Stephen Connolly Path: changelog.html http://jenkins-ci.org/commit/jenkins/46dc6850edb1d7ef52592794b15e69db7dfbed1a Log: Noting merges JENKINS-15355 JENKINS-21618 JENKINS-22941 JENKINS-25938 JENKINS-26391 JENKINS-26900 JENKINS-27476 JENKINS-27563 JENKINS-27564 JENKINS-27565 JENKINS-27566 Fixing link text for JENKINS-6167

            Code changed in jenkins
            User: Jesse Glick
            Path:
            aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowTest.java
            job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
            support/src/main/java/org/jenkinsci/plugins/workflow/support/steps/ExecutorStepExecution.java
            http://jenkins-ci.org/commit/workflow-plugin/ee2ca390e73004b411e133c1832b88e977b47f28
            Log:
            JENKINS-25938 Starting to use AsynchronousExecutable.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowTest.java job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java support/src/main/java/org/jenkinsci/plugins/workflow/support/steps/ExecutorStepExecution.java http://jenkins-ci.org/commit/workflow-plugin/ee2ca390e73004b411e133c1832b88e977b47f28 Log: JENKINS-25938 Starting to use AsynchronousExecutable.

            Code changed in jenkins
            User: Jesse Glick
            Path:
            aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowTest.java
            http://jenkins-ci.org/commit/workflow-cps-plugin/89032eb815863a7008a21ad6d545e33eb77160cc
            Log:
            JENKINS-25938 Starting to use AsynchronousExecutable.
            Originally-Committed-As: ee2ca390e73004b411e133c1832b88e977b47f28

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: aggregator/src/test/java/org/jenkinsci/plugins/workflow/WorkflowTest.java http://jenkins-ci.org/commit/workflow-cps-plugin/89032eb815863a7008a21ad6d545e33eb77160cc Log: JENKINS-25938 Starting to use AsynchronousExecutable. Originally-Committed-As: ee2ca390e73004b411e133c1832b88e977b47f28

            Code changed in jenkins
            User: Jesse Glick
            Path:
            job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java
            http://jenkins-ci.org/commit/workflow-job-plugin/149188bc42f2cab01ea9efc54774dfdfb213f068
            Log:
            JENKINS-25938 Starting to use AsynchronousExecutable.
            Originally-Committed-As: ee2ca390e73004b411e133c1832b88e977b47f28

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: job/src/main/java/org/jenkinsci/plugins/workflow/job/WorkflowRun.java http://jenkins-ci.org/commit/workflow-job-plugin/149188bc42f2cab01ea9efc54774dfdfb213f068 Log: JENKINS-25938 Starting to use AsynchronousExecutable. Originally-Committed-As: ee2ca390e73004b411e133c1832b88e977b47f28

            People

              jglick Jesse Glick
              jglick Jesse Glick
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: