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

Jenkins stuck when concurrent builds of a same job due to log rotator

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • core
    • None

      Hello,

      I use Jenkins with parallel builds to checkout many packages.

      Example:

      parallel (
      build(build("CheckOut-Package", PACKAGE_NAME: "Package1");
      build(build("CheckOut-Package", PACKAGE_NAME: "Package2");
      ...
      build(build("CheckOut-Package", PACKAGE_NAME: "Package10");
      )
      

      Each of these jobs calls the log rotator when finished.
      Some time, next log appears:

      SEVERE: Executor threw an exception
      java.util.NoSuchElementException
              at jenkins.model.lazy.LazyLoadRunMapEntrySet$1.next(LazyLoadRunMapEntrySet.java:76)
              at jenkins.model.lazy.LazyLoadRunMapEntrySet$1.next(LazyLoadRunMapEntrySet.java:63)
              at java.util.AbstractMap$2$1.next(AbstractMap.java:385)
              at hudson.util.RunList.subList(RunList.java:139)
              at hudson.tasks.LogRotator.perform(LogRotator.java:125)
              at hudson.model.Job.logRotate(Job.java:467)
              at hudson.model.Run.execute(Run.java:1808)
              at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
              at hudson.model.ResourceController.execute(ResourceController.java:98)
              at hudson.model.Executor.run(Executor.java:374)
      

      In this case, Jenkins does not detect that the job is finished even if it is indeed finished, and stay stucked.
      Since log Rotator should not be a blocking task, I added an exception catch in this PR:
      https://github.com/jenkinsci/jenkins/pull/1790

      That was enough on my side to handle this very recurrent problem.

          [JENKINS-29888] Jenkins stuck when concurrent builds of a same job due to log rotator

          Otmane Tazi created issue -
          Oliver Gondža made changes -
          Description Original: Hello,

          I use Jenkins with parallel builds to checkout many packages.

          Example:
          parallel (
          build(build("CheckOut-Package", PACKAGE_NAME: "Package1");
          build(build("CheckOut-Package", PACKAGE_NAME: "Package2");
          ...
          build(build("CheckOut-Package", PACKAGE_NAME: "Package10");
          )

          Each of these jobs calls the log rotator when finished.
          Some time, next log appears:

          SEVERE: Executor threw an exception
          java.util.NoSuchElementException
                  at jenkins.model.lazy.LazyLoadRunMapEntrySet$1.next(LazyLoadRunMapEntrySet.java:76)
                  at jenkins.model.lazy.LazyLoadRunMapEntrySet$1.next(LazyLoadRunMapEntrySet.java:63)
                  at java.util.AbstractMap$2$1.next(AbstractMap.java:385)
                  at hudson.util.RunList.subList(RunList.java:139)
                  at hudson.tasks.LogRotator.perform(LogRotator.java:125)
                  at hudson.model.Job.logRotate(Job.java:467)
                  at hudson.model.Run.execute(Run.java:1808)
                  at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
                  at hudson.model.ResourceController.execute(ResourceController.java:98)
                  at hudson.model.Executor.run(Executor.java:374)

          In this case, Jenkins does not detect that the job is finished even if it is indeed finished, and stay stucked.
          Since log Rotator should not be a blocking task, I added an exception catch in this PR:
          https://github.com/jenkinsci/jenkins/pull/1790

          That was enough on my side to handle this very recurrent problem.
          New: Hello,

          I use Jenkins with parallel builds to checkout many packages.

          Example:
          {noformat}
          parallel (
          build(build("CheckOut-Package", PACKAGE_NAME: "Package1");
          build(build("CheckOut-Package", PACKAGE_NAME: "Package2");
          ...
          build(build("CheckOut-Package", PACKAGE_NAME: "Package10");
          )
          {noformat}

          Each of these jobs calls the log rotator when finished.
          Some time, next log appears:

          {noformat}
          SEVERE: Executor threw an exception
          java.util.NoSuchElementException
                  at jenkins.model.lazy.LazyLoadRunMapEntrySet$1.next(LazyLoadRunMapEntrySet.java:76)
                  at jenkins.model.lazy.LazyLoadRunMapEntrySet$1.next(LazyLoadRunMapEntrySet.java:63)
                  at java.util.AbstractMap$2$1.next(AbstractMap.java:385)
                  at hudson.util.RunList.subList(RunList.java:139)
                  at hudson.tasks.LogRotator.perform(LogRotator.java:125)
                  at hudson.model.Job.logRotate(Job.java:467)
                  at hudson.model.Run.execute(Run.java:1808)
                  at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
                  at hudson.model.ResourceController.execute(ResourceController.java:98)
                  at hudson.model.Executor.run(Executor.java:374)
          {noformat}

          In this case, Jenkins does not detect that the job is finished even if it is indeed finished, and stay stucked.
          Since log Rotator should not be a blocking task, I added an exception catch in this PR:
          https://github.com/jenkinsci/jenkins/pull/1790

          That was enough on my side to handle this very recurrent problem.
          SCM/JIRA link daemon made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]
          Thorsten Möllers made changes -
          Assignee New: Régis Desgroppes [ rdesgroppes ]
          Resolution Original: Fixed [ 1 ]
          Status Original: Resolved [ 5 ] New: Reopened [ 4 ]
          Régis Desgroppes made changes -
          Assignee Original: Régis Desgroppes [ rdesgroppes ]
          Régis Desgroppes made changes -
          Priority Original: Minor [ 4 ] New: Critical [ 2 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 164966 ] New: JNJira + In-Review [ 186306 ]

            Unassigned Unassigned
            totoman Otmane Tazi
            Votes:
            4 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated: