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

ArrayIndexOutOfBoundsException from AbstractLazyLoadRunMap.search

      Hello,

      Our Jenkins instance (1.487 - latest at the time of writing) runs as a Windows service on Windows XP and has 2 slaves running on similar boxes. I came in Monday morning to find all executors on all 3 boxes "Dead". When I clicked to see why they were dead I was greeted by this message:

      Caught exception evaluating: item.isStuck(). Reason: java.lang.ArrayIndexOutOfBoundsException: Assertion error: failing to load #749 DESC: lo=39,hi=38,size=39,size2=39

      When I looked in the logs I found the following sequence of stack traces repeated countless times, for the past few hours.

      Any ideas?

      Yannis

      29-Oct-2012 09:16:16 hudson.ExpressionFactory2$JexlExpression evaluate
      WARNING: Caught exception evaluating: item.isStuck(). Reason: java.lang.ArrayIndexOutOfBoundsException: Assertion error: failing to load #749 DESC: lo=39,hi=38,size=39,size2=39
      java.lang.ArrayIndexOutOfBoundsException: Assertion error: failing to load #749 DESC: lo=39,hi=38,size=39,size2=39
      at jenkins.model.lazy.AbstractLazyLoadRunMap.search(AbstractLazyLoadRunMap.java:418)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:210)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:103)
      at hudson.model.Job.getLastBuildsOverThreshold(Job.java:812)
      at hudson.model.Job.getEstimatedDuration(Job.java:819)
      at hudson.model.Queue$BuildableItem.isStuck(Queue.java:1651)
      at sun.reflect.GeneratedMethodAccessor253.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:258)
      at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
      at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83)
      at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)
      at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:51)
      at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)
      at hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:72)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$3.run(CoreTagLibrary.java:134)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:41)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
      at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
      at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:41)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81)
      at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63)
      at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53)
      at org.kohsuke.stapler.jelly.JellyFacet$1.dispatch(JellyFacet.java:95)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:625)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
      at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
      at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
      at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
      at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:179)
      at net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
      at org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
      at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:215)
      at winstone.RequestHandlerThread.run(RequestHandlerThread.java:138)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)
      29-Oct-2012 09:16:16 jenkins.model.lazy.AbstractLazyLoadRunMap search
      WARNING: Assertion error: failing to load #749 DESC: lo=39,hi=38,size=39,size2=39
      java.lang.Exception
      at jenkins.model.lazy.AbstractLazyLoadRunMap.search(AbstractLazyLoadRunMap.java:417)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:210)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:103)
      at hudson.model.Job.getLastBuildsOverThreshold(Job.java:812)
      at hudson.model.Job.getEstimatedDuration(Job.java:819)
      at hudson.model.queue.MappingWorksheet.<init>(MappingWorksheet.java:320)
      at hudson.model.queue.MappingWorksheet.<init>(MappingWorksheet.java:303)
      at hudson.model.Queue.maintain(Queue.java:1033)
      at hudson.model.Queue$MaintainTask.doRun(Queue.java:1759)
      at hudson.triggers.SafeTimerTask.run(SafeTimerTask.java:54)
      at java.util.TimerThread.mainLoop(Timer.java:512)
      at java.util.TimerThread.run(Timer.java:462)
      29-Oct-2012 09:16:16 hudson.triggers.SafeTimerTask run
      SEVERE: Timer task hudson.model.Queue$MaintainTask@1c2e53c failed
      java.lang.ArrayIndexOutOfBoundsException: Assertion error: failing to load #749 DESC: lo=39,hi=38,size=39,size2=39
      at jenkins.model.lazy.AbstractLazyLoadRunMap.search(AbstractLazyLoadRunMap.java:418)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:210)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:103)
      at hudson.model.Job.getLastBuildsOverThreshold(Job.java:812)
      at hudson.model.Job.getEstimatedDuration(Job.java:819)
      at hudson.model.queue.MappingWorksheet.<init>(MappingWorksheet.java:320)
      at hudson.model.queue.MappingWorksheet.<init>(MappingWorksheet.java:303)
      at hudson.model.Queue.maintain(Queue.java:1033)
      at hudson.model.Queue$MaintainTask.doRun(Queue.java:1759)
      at hudson.triggers.SafeTimerTask.run(SafeTimerTask.java:54)
      at java.util.TimerThread.mainLoop(Timer.java:512)
      at java.util.TimerThread.run(Timer.java:462)
      29-Oct-2012 09:16:16 jenkins.model.lazy.AbstractLazyLoadRunMap search
      WARNING: Assertion error: failing to load #749 DESC: lo=39,hi=38,size=39,size2=39
      java.lang.Exception
      at jenkins.model.lazy.AbstractLazyLoadRunMap.search(AbstractLazyLoadRunMap.java:417)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:210)
      at hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:103)
      at hudson.model.Job.getLastBuildsOverThreshold(Job.java:812)
      at hudson.model.Job.getEstimatedDuration(Job.java:819)
      at hudson.model.Queue$BuildableItem.isStuck(Queue.java:1651)
      at sun.reflect.GeneratedMethodAccessor253.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:258)
      at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
      at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83)
      at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57)
      at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:51)
      at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80)
      at hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:72)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$3.run(CoreTagLibrary.java:134)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:41)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      at org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
      at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
      at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81)
      at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:146)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
      at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.kohsuke.stapler.jelly.CompressTag.doTag(CompressTag.java:44)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81)
      at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63)
      at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53)
      at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:107)
      at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:625)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
      at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
      at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
      at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
      at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:179)
      at net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
      at org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
      at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:215)
      at winstone.RequestHandlerThread.run(RequestHandlerThread.java:138)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)

          [JENKINS-15652] ArrayIndexOutOfBoundsException from AbstractLazyLoadRunMap.search

          Code changed in jenkins
          User: Jesse Glick
          Path:
          core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java
          http://jenkins-ci.org/commit/jenkins/787424881f3530b29c0c74e939f684e2e80af48e
          Log:
          JENKINS-15652 Reproduced at least one assertion failure in a unit test.

          Compare: https://github.com/jenkinsci/jenkins/compare/f1b513cf9166...787424881f35

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java http://jenkins-ci.org/commit/jenkins/787424881f3530b29c0c74e939f684e2e80af48e Log: JENKINS-15652 Reproduced at least one assertion failure in a unit test. Compare: https://github.com/jenkinsci/jenkins/compare/f1b513cf9166...787424881f35

          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/972d8bad229a4be6d98c8fcaad6880e1351af3ee
          Log:
          [FIXED JENKINS-15652] “Solving” errors by just return null from ALLRM.search and reducing to one-line warnings.
          @kohsuke confirms that the intent of throwing AIOOBE was to track down definite code errors;
          but in at least some known occurrences of this bug, the problem is invalid data:
          build records on disk with <number>s that are duplicated and/or out of order.
          Since that violates the precondition of the class, we do not pretend to successfully search for such records.
          At some point it would make sense to have the code detect anomalous conditions and initiate a builds folder cleanup.
          Take only the last build of a given number, and discard any earlier with higher number.
          I.e. just set <number> to 0 or something and ignore such builds, or rename build.xml to build-broken.xml.

          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/972d8bad229a4be6d98c8fcaad6880e1351af3ee Log: [FIXED JENKINS-15652] “Solving” errors by just return null from ALLRM.search and reducing to one-line warnings. @kohsuke confirms that the intent of throwing AIOOBE was to track down definite code errors; but in at least some known occurrences of this bug, the problem is invalid data: build records on disk with <number>s that are duplicated and/or out of order. Since that violates the precondition of the class, we do not pretend to successfully search for such records. At some point it would make sense to have the code detect anomalous conditions and initiate a builds folder cleanup. Take only the last build of a given number, and discard any earlier with higher number. I.e. just set <number> to 0 or something and ignore such builds, or rename build.xml to build-broken.xml.

          dogfood added a comment -

          Integrated in jenkins_main_trunk #2557
          JENKINS-15652 More clearly distinguishing the three asserts. (Revision 6a70f6937ba34add2558d3f4e150d4f10a45fdc1)
          JENKINS-15652 Reproduced at least one assertion failure in a unit test. (Revision 787424881f3530b29c0c74e939f684e2e80af48e)

          Result = SUCCESS
          Jesse Glick : 6a70f6937ba34add2558d3f4e150d4f10a45fdc1
          Files :

          • core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java

          Jesse Glick : 787424881f3530b29c0c74e939f684e2e80af48e
          Files :

          • core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java

          dogfood added a comment - Integrated in jenkins_main_trunk #2557 JENKINS-15652 More clearly distinguishing the three asserts. (Revision 6a70f6937ba34add2558d3f4e150d4f10a45fdc1) JENKINS-15652 Reproduced at least one assertion failure in a unit test. (Revision 787424881f3530b29c0c74e939f684e2e80af48e) Result = SUCCESS Jesse Glick : 6a70f6937ba34add2558d3f4e150d4f10a45fdc1 Files : core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java Jesse Glick : 787424881f3530b29c0c74e939f684e2e80af48e Files : core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java

          dogfood added a comment -

          Integrated in jenkins_main_trunk #2558
          [FIXED JENKINS-15652] “Solving” errors by just return null from ALLRM.search and reducing to one-line warnings. (Revision 972d8bad229a4be6d98c8fcaad6880e1351af3ee)

          Result = SUCCESS
          Jesse Glick : 972d8bad229a4be6d98c8fcaad6880e1351af3ee
          Files :

          • core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java
          • changelog.html
          • core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java

          dogfood added a comment - Integrated in jenkins_main_trunk #2558 [FIXED JENKINS-15652] “Solving” errors by just return null from ALLRM.search and reducing to one-line warnings. (Revision 972d8bad229a4be6d98c8fcaad6880e1351af3ee) Result = SUCCESS Jesse Glick : 972d8bad229a4be6d98c8fcaad6880e1351af3ee Files : core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java changelog.html core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java

          Code changed in jenkins
          User: Jesse Glick
          Path:
          core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java
          http://jenkins-ci.org/commit/jenkins/e1f617cd25f37210d4902a24c6e63771cfb0c63d
          Log:
          JENKINS-15652 Include directory in assertion messages so it is possible to tell which project is broken.(cherry picked from commit ab2774362f1d5a5510b99a4b8f02236e8ca23d6c)

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java http://jenkins-ci.org/commit/jenkins/e1f617cd25f37210d4902a24c6e63771cfb0c63d Log: JENKINS-15652 Include directory in assertion messages so it is possible to tell which project is broken.(cherry picked from commit ab2774362f1d5a5510b99a4b8f02236e8ca23d6c)

          Code changed in jenkins
          User: Jesse Glick
          Path:
          core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java
          http://jenkins-ci.org/commit/jenkins/65e0f9c974f9316b6ba6b2c9fa6a73b2a8013d67
          Log:
          JENKINS-15652 More clearly distinguishing the three asserts.(cherry picked from commit 6a70f6937ba34add2558d3f4e150d4f10a45fdc1)

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/main/java/jenkins/model/lazy/AbstractLazyLoadRunMap.java http://jenkins-ci.org/commit/jenkins/65e0f9c974f9316b6ba6b2c9fa6a73b2a8013d67 Log: JENKINS-15652 More clearly distinguishing the three asserts.(cherry picked from commit 6a70f6937ba34add2558d3f4e150d4f10a45fdc1)

          Code changed in jenkins
          User: Jesse Glick
          Path:
          core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java
          http://jenkins-ci.org/commit/jenkins/b6b760b03fde987e452cdda75c27ca051208196f
          Log:
          JENKINS-15652 Reproduced at least one assertion failure in a unit test.(cherry picked from commit 787424881f3530b29c0c74e939f684e2e80af48e)

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/test/java/jenkins/model/lazy/AbstractLazyLoadRunMapTest.java http://jenkins-ci.org/commit/jenkins/b6b760b03fde987e452cdda75c27ca051208196f Log: JENKINS-15652 Reproduced at least one assertion failure in a unit test.(cherry picked from commit 787424881f3530b29c0c74e939f684e2e80af48e)

          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/2af3d15442547bb0d3ddd13fd2af10c33beef258
          Log:
          [FIXED JENKINS-15652] “Solving” errors by just return null from ALLRM.search and reducing to one-line warnings. @kohsuke confirms that the intent of throwing AIOOBE was to track down definite code errors; but in at least some known occurrences of this bug, the problem is invalid data: build records on disk with <number>s that are duplicated and/or out of order. Since that violates the precondition of the class, we do not pretend to successfully search for such records. At some point it would make sense to have the code detect anomalous conditions and initiate a builds folder cleanup. Take only the last build of a given number, and discard any earlier with higher number. I.e. just set <number> to 0 or something and ignore such builds, or rename build.xml to build-broken.xml.

          Cherry-picked-from: 972d8bad229a4be6d98c8fcaad6880e1351af3ee

          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/2af3d15442547bb0d3ddd13fd2af10c33beef258 Log: [FIXED JENKINS-15652] “Solving” errors by just return null from ALLRM.search and reducing to one-line warnings. @kohsuke confirms that the intent of throwing AIOOBE was to track down definite code errors; but in at least some known occurrences of this bug, the problem is invalid data: build records on disk with <number>s that are duplicated and/or out of order. Since that violates the precondition of the class, we do not pretend to successfully search for such records. At some point it would make sense to have the code detect anomalous conditions and initiate a builds folder cleanup. Take only the last build of a given number, and discard any earlier with higher number. I.e. just set <number> to 0 or something and ignore such builds, or rename build.xml to build-broken.xml. Cherry-picked-from: 972d8bad229a4be6d98c8fcaad6880e1351af3ee

          Linards L added a comment - - edited

          So ... is it fixed in non-LTS? v1.529.? Or simply resolved ... making the real fix postponed ... ?

          I am still having this error on 1.529 ..

          Sep 12, 2013 8:41:31 AM WARNING jenkins.model.lazy.AbstractLazyLoadRunMap search
          JENKINS-15652 Assertion error #1: failing to load E:\Hudson\jobs\<job_name>\builds #1 DESC: lo=3,hi=1,size=175,size2=175

          I am interested in this because currently our production builserver is pretty much bug-free ... except this one ...

          Linards L added a comment - - edited So ... is it fixed in non-LTS? v1.529.? Or simply resolved ... making the real fix postponed ... ? I am still having this error on 1.529 .. Sep 12, 2013 8:41:31 AM WARNING jenkins.model.lazy.AbstractLazyLoadRunMap search JENKINS-15652 Assertion error #1: failing to load E:\Hudson\jobs\<job_name>\builds #1 DESC: lo=3,hi=1,size=175,size2=175 I am interested in this because currently our production builserver is pretty much bug-free ... except this one ...

          Jesse Glick added a comment -

          As in my commit comment:

          …and reducing to one-line warnings.

          JENKINS-18289 (in 1.526) is the real fix.

          Jesse Glick added a comment - As in my commit comment: …and reducing to one-line warnings. JENKINS-18289 (in 1.526) is the real fix.

            Unassigned Unassigned
            yannislionis Yannis Lionis
            Votes:
            25 Vote for this issue
            Watchers:
            39 Start watching this issue

              Created:
              Updated:
              Resolved: