On large enough instance, calculating weights for TagCloud can take significant amount of the time (~ 90% of time) needed to render /computer/XXX page.

      Handling GET /hudson/computer/XXX/ : ajp-127.0.0.1-8009-108 Computer/index.jelly
      java.util.ArrayList.size(ArrayList.java:177)
      java.util.AbstractList$Itr.hasNext(AbstractList.java:339)
      hudson.Util.filter(Util.java:103)
      hudson.Util.filter(Util.java:115)
      hudson.matrix.AxisList.subList(AxisList.java:66)
      hudson.matrix.MatrixConfiguration.getAssignedLabel(MatrixConfiguration.java:301)
      hudson.model.Label.getTiedJobCount(Label.java:392)
      hudson.model.Node$1.weight(Node.java:234)
      hudson.model.Node$1.weight(Node.java:232)
      hudson.util.TagCloud.<init>(TagCloud.java:73)
      hudson.model.Node.getLabelCloud(Node.java:232)
      sun.reflect.GeneratedMethodAccessor123002.invoke(Unknown Source)
      

          [JENKINS-30705] Optimize TagCloud size calculation

          Oliver Gondža created issue -
          Oliver Gondža made changes -
          Description Original: On large enough instance, calculating weights for {{TagCloud}} can take significant amount of the time needed to render {{/computer/XXX}} page.

          {noformat}
          Handling GET /hudson/computer/XXX/ : ajp-127.0.0.1-8009-108 Computer/index.jelly
          java.util.ArrayList.size(ArrayList.java:177)
          java.util.AbstractList$Itr.hasNext(AbstractList.java:339)
          hudson.Util.filter(Util.java:103)
          hudson.Util.filter(Util.java:115)
          hudson.matrix.AxisList.subList(AxisList.java:66)
          hudson.matrix.MatrixConfiguration.getAssignedLabel(MatrixConfiguration.java:301)
          hudson.model.Label.getTiedJobCount(Label.java:392)
          hudson.model.Node$1.weight(Node.java:234)
          hudson.model.Node$1.weight(Node.java:232)
          hudson.util.TagCloud.<init>(TagCloud.java:73)
          hudson.model.Node.getLabelCloud(Node.java:232)
          sun.reflect.GeneratedMethodAccessor123002.invoke(Unknown Source)
          {noformat}
          New: On large enough instance, calculating weights for {{TagCloud}} can take significant amount of the time (~ 90% of time) needed to render {{/computer/XXX}} page.

          {noformat}
          Handling GET /hudson/computer/XXX/ : ajp-127.0.0.1-8009-108 Computer/index.jelly
          java.util.ArrayList.size(ArrayList.java:177)
          java.util.AbstractList$Itr.hasNext(AbstractList.java:339)
          hudson.Util.filter(Util.java:103)
          hudson.Util.filter(Util.java:115)
          hudson.matrix.AxisList.subList(AxisList.java:66)
          hudson.matrix.MatrixConfiguration.getAssignedLabel(MatrixConfiguration.java:301)
          hudson.model.Label.getTiedJobCount(Label.java:392)
          hudson.model.Node$1.weight(Node.java:234)
          hudson.model.Node$1.weight(Node.java:232)
          hudson.util.TagCloud.<init>(TagCloud.java:73)
          hudson.model.Node.getLabelCloud(Node.java:232)
          sun.reflect.GeneratedMethodAccessor123002.invoke(Unknown Source)
          {noformat}
          Oliver Gondža made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Oliver Gondža made changes -
          Remote Link New: This issue links to "PR #1843 (Web Link)" [ 13166 ]
          SCM/JIRA link daemon made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: In Progress [ 3 ] New: Resolved [ 5 ]
          Oliver Gondža made changes -
          Labels Original: performance New: lts-candidate performance
          Oliver Gondža made changes -
          Labels Original: lts-candidate performance New: 1.625.2-fixed performance
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 165823 ] New: JNJira + In-Review [ 197824 ]

            olivergondza Oliver Gondža
            olivergondza Oliver Gondža
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: