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

OldDataMonitor makes Jenkins single threaded for all saves.

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Minor Minor
    • core

      In a busy system with many quick jobs/saves (e.g. maven multi module projects!) then the master effectively becomes one big bottleneck as the OldDataMonitor is called on each new save and this uses a lock serializing all write requests.

      The code should be investigated to see if either it can be made lockfree or at least reduce the scope of the locks.

          [JENKINS-30139] OldDataMonitor makes Jenkins single threaded for all saves.

          James Nord created issue -
          Stephen Connolly made changes -
          Assignee New: Stephen Connolly [ stephenconnolly ]
          Stephen Connolly made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]

          Code changed in jenkins
          User: Stephen Connolly
          Path:
          core/src/main/java/hudson/diagnosis/OldDataMonitor.java
          http://jenkins-ci.org/commit/jenkins/2c5deeb6c061a91aeac232e978756de3b1d0be98
          Log:
          JENKINS-30139 Switch from a big fat lock to a concurrent collection

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Stephen Connolly Path: core/src/main/java/hudson/diagnosis/OldDataMonitor.java http://jenkins-ci.org/commit/jenkins/2c5deeb6c061a91aeac232e978756de3b1d0be98 Log: JENKINS-30139 Switch from a big fat lock to a concurrent collection

          Code changed in jenkins
          User: Stephen Connolly
          Path:
          core/src/main/java/hudson/diagnosis/OldDataMonitor.java
          http://jenkins-ci.org/commit/jenkins/9a57858a925aea1a01da9061d60e91e37d319873
          Log:
          JENKINS-30139 Add @Restricted to prevent external use of internal data

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Stephen Connolly Path: core/src/main/java/hudson/diagnosis/OldDataMonitor.java http://jenkins-ci.org/commit/jenkins/9a57858a925aea1a01da9061d60e91e37d319873 Log: JENKINS-30139 Add @Restricted to prevent external use of internal data

          Code changed in jenkins
          User: Stephen Connolly
          Path:
          core/src/main/java/hudson/diagnosis/OldDataMonitor.java
          http://jenkins-ci.org/commit/jenkins/67cce20291be4d4002d7e293f1e0de6ee60058f3
          Log:
          JENKINS-30139 Forgot to change this one

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Stephen Connolly Path: core/src/main/java/hudson/diagnosis/OldDataMonitor.java http://jenkins-ci.org/commit/jenkins/67cce20291be4d4002d7e293f1e0de6ee60058f3 Log: JENKINS-30139 Forgot to change this one

          Code changed in jenkins
          User: Stephen Connolly
          Path:
          core/src/main/java/hudson/diagnosis/OldDataMonitor.java
          http://jenkins-ci.org/commit/jenkins/e9471744338546539ed163d106763be021f278f8
          Log:
          JENKINS-30139 Oleg wants to keep the data accessible so we have to go for immutable

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Stephen Connolly Path: core/src/main/java/hudson/diagnosis/OldDataMonitor.java http://jenkins-ci.org/commit/jenkins/e9471744338546539ed163d106763be021f278f8 Log: JENKINS-30139 Oleg wants to keep the data accessible so we have to go for immutable

          Code changed in jenkins
          User: Stephen Connolly
          Path:
          core/src/main/java/hudson/diagnosis/OldDataMonitor.java
          http://jenkins-ci.org/commit/jenkins/e94e459ec430f2cfcb9afef07690942919666370
          Log:
          Merge pull request #1825 from stephenc/jenkins-30139

          JENKINS-30139 Switch from a big fat lock to a concurrent collection

          Compare: https://github.com/jenkinsci/jenkins/compare/f9a80d4dae25...e94e459ec430

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Stephen Connolly Path: core/src/main/java/hudson/diagnosis/OldDataMonitor.java http://jenkins-ci.org/commit/jenkins/e94e459ec430f2cfcb9afef07690942919666370 Log: Merge pull request #1825 from stephenc/jenkins-30139 JENKINS-30139 Switch from a big fat lock to a concurrent collection Compare: https://github.com/jenkinsci/jenkins/compare/f9a80d4dae25...e94e459ec430

          Stephen Connolly added a comment - https://github.com/jenkinsci/jenkins/commit/e94e459ec430f2cfcb9afef07690942919666370
          Stephen Connolly made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: In Progress [ 3 ] New: Resolved [ 5 ]

            stephenconnolly Stephen Connolly
            teilo James Nord
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: