• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • core, pipeline
    • Jenkins 2.100. All other information in the support.zip

      Since upgrading to Jenkins 2.100, all Jenkins Pipeline Jobs have started showing barber poles, and reporting the time left as N/A, despite some of them having run thousands of times, and should have plenty of run information to at least give some perspective on the time remaining.

       

      As over 90% of our jobs now use pipeline or declarative pipeline, I thought that all jobs were experiencing the issue, however Freestyle projects seem to report their time remaining just fine

          [JENKINS-48821] Time remaining for all pipeline jobs is N/A

          Tom Larrow added a comment -

          From the outside, it appears that https://build.kde.org/ may be experiencing the same issue.  From my unauthenticated view, all jobs are reporting N/A , and they are also on Jenkins 2.101 and using many pipeline jobs building on external nodes.  I just don't know if it is because I am unauthenticated which is the reason for me seeing N/A on all the jobs.

          Tom Larrow added a comment - From the outside, it appears that https://build.kde.org/  may be experiencing the same issue.  From my unauthenticated view, all jobs are reporting N/A , and they are also on Jenkins 2.101 and using many pipeline jobs building on external nodes.  I just don't know if it is because I am unauthenticated which is the reason for me seeing N/A on all the jobs.

          Andrew Bayer added a comment -

          oleg_nenashev - any ideas here? Feels like a core thing rather than a Pipeline thing, but it only pops up for Pipeline jobs...

          Andrew Bayer added a comment - oleg_nenashev - any ideas here? Feels like a core thing rather than a Pipeline thing, but it only pops up for Pipeline jobs...

          Oleg Nenashev added a comment -

          abayer I'd bet it is an issue after JENKINS-48350 in 2.92

          Oleg Nenashev added a comment - abayer I'd bet it is an issue after JENKINS-48350 in 2.92

          Oleg Nenashev added a comment -

          CC jimilian. I was proposing an extra API in that PR, maybe we need to reconsider that

          Oleg Nenashev added a comment - CC jimilian . I was proposing an extra API in that PR, maybe we need to reconsider that

          Berno Langer added a comment -

          In hudson.model.Executor the executableEstimatedDuration is resetted always in the finally block at line 462. Moving this one line up, so it is only executed when there is no asynchronous execution, solved the problem for me.

          [...]
          458       } finally {
          459            if (asynchronousExecution == null) {
          460                finish2();
          461                executableEstimatedDuration = DEFAULT_ESTIMATED_DURATION;
          462            }
          463        }
          [...]
          

          Berno Langer added a comment - In hudson.model.Executor the executableEstimatedDuration is resetted always in the finally block at line 462 . Moving this one line up, so it is only executed when there is no asynchronous execution, solved the problem for me. [...] 458 } finally { 459 if (asynchronousExecution == null) { 460 finish2(); 461 executableEstimatedDuration = DEFAULT_ESTIMATED_DURATION; 462 } 463 } [...]

          This error also appears in 2.89.4

          Andreas Tscharner added a comment - This error also appears in 2.89.4

          Oleg Nenashev added a comment -

          Oleg Nenashev added a comment - https://github.com/jenkinsci/jenkins/pull/3329

          Code changed in jenkins
          User: Berno Langer
          Path:
          core/src/main/java/hudson/model/Executor.java
          http://jenkins-ci.org/commit/jenkins/3fc392108ae382a4616964aa8bbb6b8cb9dff0dc
          Log:
          JENKINS-48821 - Don't forget estimated duration of asynchronous jobs (#3329)

          • Don't forget estimated duration of asynchronous jobs.

          When jobs are executed, the estimated duration is calculated, memorized
          and reseted when the job is finished.

          But when the job is executed asynchronously (e.g. as for pipeline
          scripts), the execution is just triggered. Therefore the estimated
          duration should remain - and not be reseted after triggering.

          JENKINS-48821: Time remaining for all pipeline jobs is N/A
          JENKINS-49616: Estimated time remaining NA

          • Reset cached estimated duration also when asynchronous job ends.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Berno Langer Path: core/src/main/java/hudson/model/Executor.java http://jenkins-ci.org/commit/jenkins/3fc392108ae382a4616964aa8bbb6b8cb9dff0dc Log: JENKINS-48821 - Don't forget estimated duration of asynchronous jobs (#3329) Don't forget estimated duration of asynchronous jobs. When jobs are executed, the estimated duration is calculated, memorized and reseted when the job is finished. But when the job is executed asynchronously (e.g. as for pipeline scripts), the execution is just triggered. Therefore the estimated duration should remain - and not be reseted after triggering. JENKINS-48821 : Time remaining for all pipeline jobs is N/A JENKINS-49616 : Estimated time remaining NA Reset cached estimated duration also when asynchronous job ends.

          Oleg Nenashev added a comment -

          The patch has been integrated towards 2.111

          Oleg Nenashev added a comment - The patch has been integrated towards 2.111

          Code changed in jenkins
          User: Berno Langer
          Path:
          core/src/main/java/hudson/model/Executor.java
          http://jenkins-ci.org/commit/jenkins/1400918ddaef45470720e60d4d1dbfd2f6ac78d4
          Log:
          JENKINS-48821 - Don't forget estimated duration of asynchronous jobs (#3329)

          • Don't forget estimated duration of asynchronous jobs.

          When jobs are executed, the estimated duration is calculated, memorized
          and reseted when the job is finished.

          But when the job is executed asynchronously (e.g. as for pipeline
          scripts), the execution is just triggered. Therefore the estimated
          duration should remain - and not be reseted after triggering.

          JENKINS-48821: Time remaining for all pipeline jobs is N/A
          JENKINS-49616: Estimated time remaining NA

          • Reset cached estimated duration also when asynchronous job ends.

          (cherry picked from commit 3fc392108ae382a4616964aa8bbb6b8cb9dff0dc)

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Berno Langer Path: core/src/main/java/hudson/model/Executor.java http://jenkins-ci.org/commit/jenkins/1400918ddaef45470720e60d4d1dbfd2f6ac78d4 Log: JENKINS-48821 - Don't forget estimated duration of asynchronous jobs (#3329) Don't forget estimated duration of asynchronous jobs. When jobs are executed, the estimated duration is calculated, memorized and reseted when the job is finished. But when the job is executed asynchronously (e.g. as for pipeline scripts), the execution is just triggered. Therefore the estimated duration should remain - and not be reseted after triggering. JENKINS-48821 : Time remaining for all pipeline jobs is N/A JENKINS-49616 : Estimated time remaining NA Reset cached estimated duration also when asynchronous job ends. (cherry picked from commit 3fc392108ae382a4616964aa8bbb6b8cb9dff0dc)

            blanger Berno Langer
            tomlarrow Tom Larrow
            Votes:
            3 Vote for this issue
            Watchers:
            13 Start watching this issue

              Created:
              Updated:
              Resolved: