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

Improve dependency graph calculation (for maven jobs)

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Fixed
    • Minor
    • core, maven-plugin
    • None

    Description

      Further ideas on how to improve dependency graph calculation - beyond JENKINS-7535

      Comment from tdunning:

      "It would be lovely if the dependency computation were to use a more clever algorithm so that it is very fast, but there are some quick wins available:

      a) don't do it if nothing changed

      b) don't do it if another thread is already doing a global recomputation. At the least, just have a single thread that does this dependency computation and have save mark the graph is needing an update. That way nobody is delayed and the worst that happens is one thread does the updates back-to-back forever.

      c) only change as much as is needed by the recently changed dependencies. This is an extension of (a) to make the entire computation incremental. Basically, you can keep an update time on each node and on the graph in general. In doing the dependency computation, you can skip part of the computation as soon as you note that the node under consideration hasn't changed more recently than the last graph update.
      "

      Attachments

        Issue Links

          Activity

            People

              kutzi kutzi
              kutzi kutzi
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: