• Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Minor Minor
    • workflow-job-plugin
    • Jenkins v2.89.4 w/ workflow-job-plugin v2.25
      Jenkins v2.150.3 w/ workflow-job-plugin v2.31
      Jenkins v2.289.2 w/ workflow-job-plugin v2.41

      We recently upgraded Jenkins from 2.89.4 to 2.150.3 and then upgraded the workflow-job plugin from 2.25 to 2.31 and are now seeing an issue where the full console log in the Jenkins UI is having issues loading. We run a parallel pipeline heavy workload which results in a 13mb console log in 2.150.3 and a 46mb console log in 2.89.4. In Jenkins 2.89.4, it took 45 seconds to load the full console log file in Chrome and even less time in Firefox. In Jenkins 2.150.3 the log file took 2m 30sec in Chrome and after 5 minutes never loaded in Firefox. I kept seeing "A web page is slowing down your browser. What would you like to do? [Stop It, Wait]" and eventually Firefox became unresponsive. I used Chrome 72 and Firefox 65 in my testing.

          [JENKINS-56377] console log hangs in web browser after upgrade

          Ted Xiao added a comment -

          I think it is because the javascript function which loops each line and appended parallel label

          https://github.com/jenkinsci/workflow-job-plugin/blob/master/src/main/resources/org/jenkinsci/plugins/workflow/job/console/NewNodeConsoleNote/script.js#L21-L42

          It can be reproduced by a generating lots of lines in parallel step, such as

           

          def genText(lines){
              (1..lines).each{
          	   println "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur interdum fringilla interdum"
              }
              return true
          }
          
          parallel "branch-1" : { genText(20000) }, 
                    "branch-2": { genText(20000)} 

          The consoleFull is very slow and firefox complaining about the js

          jglick does it make sense to generate the label in backend(Jenkins side) ?

          Ted Xiao added a comment - I think it is because the javascript function which loops each line and appended parallel label https://github.com/jenkinsci/workflow-job-plugin/blob/master/src/main/resources/org/jenkinsci/plugins/workflow/job/console/NewNodeConsoleNote/script.js#L21-L42 It can be reproduced by a generating lots of lines in parallel step, such as   def genText(lines){ (1..lines).each{ println "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur interdum fringilla interdum" } return true } parallel "branch-1" : { genText(20000) }, "branch-2" : { genText(20000)} The consoleFull is very slow and firefox complaining about the js jglick does it make sense to generate the label in backend(Jenkins side) ?

          Jesse Glick added a comment -

          I would start by seeing if the loop can be cut off at some threshold, then see if the loop can be optimized for the lines it does process.

          Jesse Glick added a comment - I would start by seeing if the loop can be cut off at some threshold, then see if the loop can be optimized for the lines it does process.

          Devin Nusbaum added a comment -

          I have been looking into related log performance issues, and I noticed that large logs were very slow in Chrome. In particular, Chrome would hang when scrolling, and show just a blank page until it became responsive again, and selecting text was very delayed. Firefox did not have the same issue. I think the issue was at least partly caused by this bug in Chromium, which was just marked as fixed yesterday. I was able to verify that updating Chrome to a version with the fix for that issue (79.0.3945.130) caused the issues I was experiencing to go away, and for performance to be much closer to Firefox.

          Are other users seeing this problem on Firefox, or only in Chrome/Chromium?

          They are definitely some other things that should be improved, I just wanted to note that at least some of the problem seems to have been a bug in Chromium that was very recently fixed.

          Devin Nusbaum added a comment - I have been looking into related log performance issues, and I noticed that large logs were very slow in Chrome. In particular, Chrome would hang when scrolling, and show just a blank page until it became responsive again, and selecting text was very delayed. Firefox did not have the same issue. I think the issue was at least partly caused by this bug in Chromium , which was just marked as fixed yesterday. I was able to verify that updating Chrome to a version with the fix for that issue (79.0.3945.130) caused the issues I was experiencing to go away, and for performance to be much closer to Firefox. Are other users seeing this problem on Firefox, or only in Chrome/Chromium? They are definitely some other things that should be improved, I just wanted to note that at least some of the problem seems to have been a bug in Chromium that was very recently fixed.

          We are facing the same issue.. Chrome does not respond or return back on a large console log

          Any idea when this would be resolved? Seems open from about a year.

          Sundar Kasturi added a comment - We are facing the same issue.. Chrome does not respond or return back on a large console log Any idea when this would be resolved? Seems open from about a year.

          Denys Digtiar added a comment -

          FYI jhartley. It looks like something UX SIG might be interested in.

          Denys Digtiar added a comment - FYI jhartley . It looks like something UX SIG might be interested in.

          duemir - this doesn't really fit the work the UX SIG is currently engaged with. Thanks for letting me know though

          Jeremy Hartley added a comment - duemir - this doesn't really fit the work the UX SIG is currently engaged with. Thanks for letting me know though

          Oleg Nenashev added a comment -

          gerganzh is it something you are working on?

          Oleg Nenashev added a comment - gerganzh is it something you are working on?

          Gergan Zhekov added a comment - - edited

          Oleg Nenashev I am currently working on this and I am making good progress. Logs that used to load for 2 minutes now load in the span of 2-5 seconds. Will make a pull request on Tuesday. 

          Gergan Zhekov added a comment - - edited Oleg Nenashev I am currently working on this and I am making good progress. Logs that used to load for 2 minutes now load in the span of 2-5 seconds. Will make a pull request on Tuesday. 

          Gergan Zhekov added a comment - - edited

          I've made a pull request: https://github.com/jenkinsci/workflow-job-plugin/pull/164

          My PR build failed, and my guess is that the tests require a higher version of Jenkins (all of them pass locally). This is the error:

           
          Caused by: java.io.IOException: Pipeline: Nodes and Processes version 2.35 failed to load.
           - You must update Jenkins from version 2.164.1 to version 2.176.1 or later to run this plugin.
          

          The last commit in the main repository seems to be related to the build process (and also updated the required Jenkins version). I am not 100% sure if that is the reason though.

          Gergan Zhekov added a comment - - edited I've made a pull request: https://github.com/jenkinsci/workflow-job-plugin/pull/164 My PR build failed, and my guess is that the tests require a higher version of Jenkins (all of them pass locally). This is the error: Caused by: java.io.IOException: Pipeline: Nodes and Processes version 2.35 failed to load. - You must update Jenkins from version 2.164.1 to version 2.176.1 or later to run this plugin. The last commit in the main repository seems to be related to the build process (and also updated the required Jenkins version). I am not 100% sure if that is the reason though.

          Jesse Jarzynka added a comment - - edited

          I believe I've narrowed down the cause of this slowness (but not a fix), please see my comments in https://issues.jenkins.io/browse/JENKINS-62241

          EDIT: looks like the PR above may be addressing this, I glossed right over it!

          Jesse Jarzynka added a comment - - edited I believe I've narrowed down the cause of this slowness (but not a fix), please see my comments in https://issues.jenkins.io/browse/JENKINS-62241 EDIT: looks like the PR above may be addressing this, I glossed right over it!

            gerganzh Gergan Zhekov
            mkozell Mike Kozell
            Votes:
            2 Vote for this issue
            Watchers:
            14 Start watching this issue

              Created:
              Updated: