• Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Minor Minor
    • None
    • Jenkins build 1.646, Chrome, server running on Windows 10
      Build-name-setter v 1.5.1

      I have a build project that will rename itself based on the Mercurial branch it was built from using the plugin build-name-setter and a macro (${PROJECT_DISPLAY_NAME} ${TE_Branch_Name}) where TE_Branch_Name contains my mercurial branch set as a parameter.

      I usually end up building from our default branch, but this morning I had to build from another branch and although the branch rename resulted in the history updating during the build, once the build had completed the history was wiped and only the most recent (renamed) build was shown.

      I had originally only noticed the history missing in the sidebar of the project page, but all builds from that project are missing from the main 'build history of Jenkins' page also. The child task that the project kicks off still exist in the history as are all other builds kicked off via other projects.

      Manage Jenkins page reports:
      You have data stored in an older format and/or unreadable data.
      (note: this is after upgrading to latest version 1.651.3)

      In my logs I have a lot of the following stack trace appearing:
      (note: that the number and length of these traces mean that I can't go far enough back to see the time I ran the build that lost the build history)

      Sep 28, 2016 11:30:13 AM WARNING hudson.ExpressionFactory2$JexlExpression evaluate
      Caught exception evaluating: range.isOld(150) in /administrativeMonitor/OldData/manage. Reason: java.lang.ClassCastException: hudson.util.VersionNumber$StringItem cannot be cast to hudson.util.VersionNumber$IntegerItem
      java.lang.ClassCastException: hudson.util.VersionNumber$StringItem cannot be cast to hudson.util.VersionNumber$IntegerItem
      at hudson.util.VersionNumber.digit(VersionNumber.java:478)
      at hudson.diagnosis.OldDataMonitor$VersionRange.isOld(OldDataMonitor.java:275)
      at sun.reflect.GeneratedMethodAccessor259.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      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:74)
      at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
      at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsBoolean(ExpressionSupport.java:71)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:97)
      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.WhenTag.doTag(WhenTag.java:46)
      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.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.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.CallTagLibScript$1.run(CallTagLibScript.java:99)
      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.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)
      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:120)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:99)
      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.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:120)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:95)
      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:746)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:233)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
      at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      at org.eclipse.jetty.server.Server.handle(Server.java:370)
      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
      at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:949)
      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1011)
      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)
      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      at java.lang.Thread.run(Unknown Source)

          [JENKINS-38565] Build history lost after renaming project

          Matt Allwood added a comment -

          Note: My script always renames the build using that plugin, the only difference is that this time it was renamed to something different to the previous builds that were in the build history

          Matt Allwood added a comment - Note: My script always renames the build using that plugin, the only difference is that this time it was renamed to something different to the previous builds that were in the build history

          Matt Allwood added a comment - - edited

          Another thought on this - the build was being renamed to 'TE6.24' - it may be having issues with the period in the name, although subsequent builds of TE6.24 haven't wiped the history

          Matt Allwood added a comment - - edited Another thought on this - the build was being renamed to 'TE6.24' - it may be having issues with the period in the name, although subsequent builds of TE6.24 haven't wiped the history

          Daniel Beck added a comment -

          Your report is contradictory – first, you write that the project renames itself, then you write that the build names are set. Which is it?

          Daniel Beck added a comment - Your report is contradictory – first, you write that the project renames itself, then you write that the build names are set. Which is it?

          Matt Allwood added a comment -

          Apologies, it's the build name

          Matt Allwood added a comment - Apologies, it's the build name

          Daniel Beck added a comment -

          Interesting. Not sure what's going on with the OldDataMonitor, but it looks like it is dealing with a plugin or Jenkins release with a version that does not start with a digit. Could you provide a list of all installed plugins and versions?

          Regarding the missing builds, would be interesting to see whether any of them still exist on disk, and if they do, what their build.xml contents are.

          Daniel Beck added a comment - Interesting. Not sure what's going on with the OldDataMonitor, but it looks like it is dealing with a plugin or Jenkins release with a version that does not start with a digit. Could you provide a list of all installed plugins and versions? Regarding the missing builds, would be interesting to see whether any of them still exist on disk, and if they do, what their build.xml contents are.

          Matt Allwood added a comment -

          List of installed plugins (from System Properties):

          ant 1.2 true false
          antisamy-markup-formatter 1.3 true true
          any-buildstep 0.1 true false
          artifactdeployer 0.33 true false
          bds-plugin 3.1 true false
          build-name-setter 1.5.1 true false
          build-timeout 1.16 true false
          clone-workspace-scm 0.6 true false
          compress-artifacts 1.7 true false
          conditional-buildstep 1.3.3 true false
          copy-to-slave 1.4.4 true false
          copyartifact 1.37 true false
          credentials 1.24 true true
          cvs 2.12 true true
          envinject 1.92.1 true false
          external-monitor-job 1.4 true false
          flexible-publish 0.15.2 true false
          groovy 1.29 true false
          hudsontrayapp 0.7.3 true false
          javadoc 1.3 true true
          jira 2.1 true false
          jobConfigHistory 2.12 true false
          junit 1.10 true true
          ldap 1.11 true false
          mailer 1.16 true true
          mapdb-api 1.0.6.0 true false
          matrix-auth 1.2 true true
          matrix-project 1.6 true true
          maven-plugin 2.12.1 true true
          mercurial 1.54 true false
          nunit 0.17 true false
          pam-auth 1.2 true true
          Parameterized-Remote-Trigger 2.2.2 true false
          parameterized-trigger 2.30 true false
          patch-parameter 1.2 true false
          rebuild 1.25 true false
          run-condition 1.0 true false
          scm-api 1.0 true false
          script-security 1.17 true true
          shared-workspace 1.0.2 true false
          simple-parameterized-builds-report 1.4 true false
          ssh-credentials 1.11 true true
          ssh-slaves 1.10 true true
          subversion 2.5.7 true true
          text-file-operations 1.2.1 true false
          thinBackup 1.7.4 true false
          throttle-concurrents 1.8.4 true false
          token-macro 1.12.1 true false
          translation 1.12 true true
          versionnumber 1.6 true false
          windows-slaves 1.1 true true
          ws-cleanup 0.28 true false

          Unfortunately none of the old builds are still on the disk (they only start from the first build after the history wipe)

          Matt Allwood added a comment - List of installed plugins (from System Properties): ant 1.2 true false antisamy-markup-formatter 1.3 true true any-buildstep 0.1 true false artifactdeployer 0.33 true false bds-plugin 3.1 true false build-name-setter 1.5.1 true false build-timeout 1.16 true false clone-workspace-scm 0.6 true false compress-artifacts 1.7 true false conditional-buildstep 1.3.3 true false copy-to-slave 1.4.4 true false copyartifact 1.37 true false credentials 1.24 true true cvs 2.12 true true envinject 1.92.1 true false external-monitor-job 1.4 true false flexible-publish 0.15.2 true false groovy 1.29 true false hudsontrayapp 0.7.3 true false javadoc 1.3 true true jira 2.1 true false jobConfigHistory 2.12 true false junit 1.10 true true ldap 1.11 true false mailer 1.16 true true mapdb-api 1.0.6.0 true false matrix-auth 1.2 true true matrix-project 1.6 true true maven-plugin 2.12.1 true true mercurial 1.54 true false nunit 0.17 true false pam-auth 1.2 true true Parameterized-Remote-Trigger 2.2.2 true false parameterized-trigger 2.30 true false patch-parameter 1.2 true false rebuild 1.25 true false run-condition 1.0 true false scm-api 1.0 true false script-security 1.17 true true shared-workspace 1.0.2 true false simple-parameterized-builds-report 1.4 true false ssh-credentials 1.11 true true ssh-slaves 1.10 true true subversion 2.5.7 true true text-file-operations 1.2.1 true false thinBackup 1.7.4 true false throttle-concurrents 1.8.4 true false token-macro 1.12.1 true false translation 1.12 true true versionnumber 1.6 true false windows-slaves 1.1 true true ws-cleanup 0.28 true false Unfortunately none of the old builds are still on the disk (they only start from the first build after the history wipe)

            le0 Lev Mishin
            mallwood1 Matt Allwood
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: