• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • cvs-plugin
    • Jenkins 1.526, Windows (master)

      • Additional VM arguments
      • Jenkins is being run as a service with the following arguments:
      -Xms4096m -Xmx4096m -XX:PermSize=256m -XX:NewSize=200m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar "%BASE%\jenkins.war" --httpPort=8080
      

      Heap dump available here: http://www.sendspace.com/file/58aod4

      We're using CVS as our versioning system...

          [JENKINS-19458] Jenkins High Memory Usage: CvsRevisionState

          Omair Inam created issue -
          Omair Inam made changes -
          Description Original:

          * Additional VM arguments
          * Jenkins is being run as a service with the following arguments:

          {noformat}
          -Xms4096m -Xmx4096m -XX:PermSize=256m -XX:NewSize=200m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar "%BASE%\jenkins.war" --httpPort=8080
          {noformat}

          Heap dump available here: http://www.sendspace.com/file/58aod4

          We're using CVS as our versioning system...

          New:
          * Additional VM arguments
          * Jenkins is being run as a service with the following arguments:

          {noformat}
          -Xms4096m -Xmx4096m -XX:PermSize=256m -XX:NewSize=200m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar "%BASE%\jenkins.war" --httpPort=8080
          {noformat}

          Heap dump available here: http://www.sendspace.com/file/58aod4

          We're using CVS as our versioning system...

          Summary Original: Jenkins High Memory Usage New: Jenkins High Memory Usage: CvsRevisionState

          Omair Inam added a comment -

          A heap dump is showing 126 instances of CvsRevisionState taking up 840 MB of heap memory.... this seems rather high...

          Omair Inam added a comment - A heap dump is showing 126 instances of CvsRevisionState taking up 840 MB of heap memory.... this seems rather high...
          Omair Inam made changes -
          Attachment New: screenshot-1.jpg [ 24300 ]

          Omair Inam added a comment -

          Here's what our heap memory usage looks like

          Omair Inam added a comment - Here's what our heap memory usage looks like
          Omair Inam made changes -
          Attachment New: heap-memory-usage.jpg [ 24301 ]

          Could you give an idea about the number of repositories you have configured for your jobs, how many modules in each repository, and how many files in each module? This will have a significant bearing on the size of the change records we hold.

          Thanks.

          Michael Clarke added a comment - Could you give an idea about the number of repositories you have configured for your jobs, how many modules in each repository, and how many files in each module? This will have a significant bearing on the size of the change records we hold. Thanks.

          Stefan Cordes added a comment -

          Please check if
          MavenModuleSetBuild -> CopyOnWriteArrayList -> CvsRevisionState
          can be set to null?

          Stefan Cordes added a comment - Please check if MavenModuleSetBuild -> CopyOnWriteArrayList -> CvsRevisionState can be set to null?
          Stefan Cordes made changes -
          Attachment New: MavenModuleSetBuild-CvsRevisionState.PNG [ 25009 ]

          Stefan Cordes added a comment -

          Example reference tree to one CvsRevisionstate:

          this - value: hudson.scm.CvsRevisionState #23
          <- [3] - class: java.lang.Object[], value: hudson.scm.CvsRevisionState #23
          <- array - class: java.util.concurrent.CopyOnWriteArrayList, value: java.lang.Object[] #8136 (10 items)
          <- actions - class: hudson.maven.MavenModuleSetBuild, value: java.util.concurrent.CopyOnWriteArrayList #711
          <- referent - class: jenkins.model.lazy.BuildReference, value: hudson.maven.MavenModuleSetBuild #43
          <- value - class: java.util.TreeMap$Entry, value: jenkins.model.lazy.BuildReference #159
          <- left - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #1882
          <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #1881
          <- root - class: java.util.TreeMap, value: java.util.TreeMap$Entry #1877
          <- byId - class: jenkins.model.lazy.AbstractLazyLoadRunMap$Index, value: java.util.TreeMap #1639
          <- index - class: hudson.model.RunMap, value: jenkins.model.lazy.AbstractLazyLoadRunMap$Index #69
          <- builds - class: hudson.maven.MavenModuleSet, value: hudson.model.RunMap #76
          <- value - class: java.util.TreeMap$Entry, value: hudson.maven.MavenModuleSet #19
          <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #21472
          <- left - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #21465
          <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #21464
          <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #29661
          <- left - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #29660
          <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #29674
          <- root - class: java.util.TreeMap, value: java.util.TreeMap$Entry #28491
          <- core - class: hudson.util.CopyOnWriteMap$Tree, value: java.util.TreeMap #8551
          <- items (Java frame) - class: hudson.model.Hudson, value: hudson.util.CopyOnWriteMap$Tree #1
          <- theInstance - class: jenkins.model.Jenkins, value: hudson.model.Hudson #1

          Stefan Cordes added a comment - Example reference tree to one CvsRevisionstate: this - value: hudson.scm.CvsRevisionState #23 <- [3] - class: java.lang.Object[], value: hudson.scm.CvsRevisionState #23 <- array - class: java.util.concurrent.CopyOnWriteArrayList, value: java.lang.Object[] #8136 (10 items) <- actions - class: hudson.maven.MavenModuleSetBuild, value: java.util.concurrent.CopyOnWriteArrayList #711 <- referent - class: jenkins.model.lazy.BuildReference, value: hudson.maven.MavenModuleSetBuild #43 <- value - class: java.util.TreeMap$Entry, value: jenkins.model.lazy.BuildReference #159 <- left - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #1882 <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #1881 <- root - class: java.util.TreeMap, value: java.util.TreeMap$Entry #1877 <- byId - class: jenkins.model.lazy.AbstractLazyLoadRunMap$Index, value: java.util.TreeMap #1639 <- index - class: hudson.model.RunMap, value: jenkins.model.lazy.AbstractLazyLoadRunMap$Index #69 <- builds - class: hudson.maven.MavenModuleSet, value: hudson.model.RunMap #76 <- value - class: java.util.TreeMap$Entry, value: hudson.maven.MavenModuleSet #19 <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #21472 <- left - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #21465 <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #21464 <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #29661 <- left - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #29660 <- right - class: java.util.TreeMap$Entry, value: java.util.TreeMap$Entry #29674 <- root - class: java.util.TreeMap, value: java.util.TreeMap$Entry #28491 <- core - class: hudson.util.CopyOnWriteMap$Tree, value: java.util.TreeMap #8551 <- items (Java frame) - class: hudson.model.Hudson, value: hudson.util.CopyOnWriteMap$Tree #1 <- theInstance - class: jenkins.model.Jenkins, value: hudson.model.Hudson #1

            Unassigned Unassigned
            cyberphoo Omair Inam
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: