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

Build stats throws illegal argument exception on dashboard view

    Details

    • Similar Issues:

      Description

      Dear all,

      on jenkins 1.597 (and also 1.598) the build stats on Dashboard view (version 2.9.4) doesn't work because of:

      Caught exception evaluating: it.getBuildStat(jobs) in /ci/. Reason: java.lang.IllegalArgumentException: fromKey > toKey
      java.lang.IllegalArgumentException: fromKey > toKey
      	at java.util.TreeMap$NavigableSubMap.<init>(TreeMap.java:1261)
      	at java.util.TreeMap$AscendingSubMap.<init>(TreeMap.java:1699)
      	at java.util.TreeMap.subMap(TreeMap.java:877)
      	at java.util.TreeMap.subMap(TreeMap.java:918)
      	at jenkins.model.lazy.AbstractLazyLoadRunMap.subMap(AbstractLazyLoadRunMap.java:250)
      	at jenkins.model.lazy.AbstractLazyLoadRunMap.headMap(AbstractLazyLoadRunMap.java:254)
      	at jenkins.model.lazy.AbstractLazyLoadRunMap.headMap(AbstractLazyLoadRunMap.java:88)
      	at java.util.Collections$UnmodifiableSortedMap.headMap(Collections.java:1543)
      	at hudson.plugins.view.dashboard.stats.StatBuilds.getBuildStat(StatBuilds.java:48)
      

      etc.

      Please let me know if you need more info.

      Regards

      Davide

        Attachments

          Issue Links

            Activity

            Hide
            jglick Jesse Glick added a comment -

            SortedMap.headMap is documented to allow the implementation to throw IllegalArgumentException

            if this map itself has a restricted range, and toKey lies outside the bounds of the range

            and passing a negative argument is clearly “outside the bounds of the range” when the range is Jenkins build numbers, whether or not earlier versions of Jenkins happened to enforce that.

            However it looks like I wrote this call to headMap so I am on the hook to fix either the caller or the implementor.

            Show
            jglick Jesse Glick added a comment - SortedMap.headMap is documented to allow the implementation to throw IllegalArgumentException if this map itself has a restricted range, and toKey lies outside the bounds of the range and passing a negative argument is clearly “outside the bounds of the range” when the range is Jenkins build numbers, whether or not earlier versions of Jenkins happened to enforce that. However it looks like I wrote this call to headMap so I am on the hook to fix either the caller or the implementor.
            Hide
            jglick Jesse Glick added a comment - - edited

            Daniel Beck’s hypothesis is correct, this was a regression in the fix of JENKINS-24380.

            Show
            jglick Jesse Glick added a comment - - edited Daniel Beck ’s hypothesis is correct, this was a regression in the fix of JENKINS-24380 .
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java
            core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java
            http://jenkins-ci.org/commit/jenkins/db1f805d68a1aaf8e2d6d1c96cb006fc1dd4c087
            Log:
            [FIXED JENKINS-26690] Integer overflow in AbstractLazyLoadRunMap.headMap with negative arguments.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java http://jenkins-ci.org/commit/jenkins/db1f805d68a1aaf8e2d6d1c96cb006fc1dd4c087 Log: [FIXED JENKINS-26690] Integer overflow in AbstractLazyLoadRunMap.headMap with negative arguments.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            changelog.html
            core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java
            core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java
            http://jenkins-ci.org/commit/jenkins/dac7dfe94e6c21eee92704acace2079668a023b1
            Log:
            JENKINS-26690 Noting merge of #1586.

            Compare: https://github.com/jenkinsci/jenkins/compare/a452023789cc...dac7dfe94e6c

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: changelog.html core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java http://jenkins-ci.org/commit/jenkins/dac7dfe94e6c21eee92704acace2079668a023b1 Log: JENKINS-26690 Noting merge of #1586. Compare: https://github.com/jenkinsci/jenkins/compare/a452023789cc...dac7dfe94e6c
            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #3987
            [FIXED JENKINS-26690] Integer overflow in AbstractLazyLoadRunMap.headMap with negative arguments. (Revision db1f805d68a1aaf8e2d6d1c96cb006fc1dd4c087)

            Result = SUCCESS
            jesse glick : db1f805d68a1aaf8e2d6d1c96cb006fc1dd4c087
            Files :

            • core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java
            • core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java
            Show
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #3987 [FIXED JENKINS-26690] Integer overflow in AbstractLazyLoadRunMap.headMap with negative arguments. (Revision db1f805d68a1aaf8e2d6d1c96cb006fc1dd4c087) Result = SUCCESS jesse glick : db1f805d68a1aaf8e2d6d1c96cb006fc1dd4c087 Files : core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java

              People

              • Assignee:
                jglick Jesse Glick
                Reporter:
                dbolognini Davide Bolognini
              • Votes:
                3 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: