BlueOcean triggering an oddly large amount of work due to simple getAction call on Run

XMLWordPrintable

      Note: we are pretty sure this is for an older version of blue ocean, not sure if in the newer ones, this happens on large masters when there is lots of stuff going on and being queued. 

       

      I spotted this while troubleshooting an issue – it was being triggered by a simple call to the display name of a run. Seems to be triggered when getting the Action list for the run, due to the BlueOcean TransientActionFactory creating an Action.

      Probably the whole thing could be sidestepped if we lazy-initialized some of these parts rather than eagerly initializing.

      at io.jenkins.blueocean.rest.hal.Link.rel(Link.java:30)
      at io.jenkins.blueocean.service.embedded.rest.OrganizationImpl.getLink(OrganizationImpl.java:93)
      at io.jenkins.blueocean.service.embedded.rest.PipelineContainerImpl.<init>(PipelineContainerImpl.java:50)
      at io.jenkins.blueocean.service.embedded.rest.PipelineContainerImpl.<init>(PipelineContainerImpl.java:41)
      at io.jenkins.blueocean.service.embedded.rest.OrganizationImpl.getPipelines(OrganizationImpl.java:65)
      at io.jenkins.blueocean.rest.factory.BluePipelineFactory.resolve(BluePipelineFactory.java:64)
      at io.jenkins.blueocean.service.embedded.BlueOceanUrlMapperImpl.getUrl(BlueOceanUrlMapperImpl.java:58)
      at io.jenkins.blueocean.service.embedded.BlueOceanUrlObjectImpl.<init>(BlueOceanUrlObjectImpl.java:19)
      at io.jenkins.blueocean.service.embedded.BlueOceanUrlObjectFactoryImpl.get(BlueOceanUrlObjectFactoryImpl.java:18)
      at io.jenkins.blueocean.service.embedded.TryBlueOceanMenu.createFor(TryBlueOceanMenu.java:45)
      at io.jenkins.blueocean.service.embedded.TryBlueOceanMenu.createFor(TryBlueOceanMenu.java:26)
      at hudson.model.Actionable.createFor(Actionable.java:111)
      at hudson.model.Actionable.getAction(Actionable.java:334)
      at jenkins.branch.OrganizationFolder.getDisplayName(OrganizationFolder.java:564)
      at hudson.model.AbstractItem.getFullDisplayName(AbstractItem.java:368)
      at hudson.model.AbstractItem.getFullDisplayName(AbstractItem.java:367)
      at hudson.model.AbstractItem.getFullDisplayName(AbstractItem.java:367)
      at hudson.model.Run.getFullDisplayName(Run.java:782)
      at

            Assignee:
            Vivek Pandey
            Reporter:
            Sam Van Oort
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: