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

TFS plug-in 4.0.0 NumberFormatExceptions

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • tfs-plugin
    • None
    • Windows 7 (32-bit)
      Jenkins 1.627
      JRE 1.7.0_67
      TFS Server: 12.0.31101.0

      Since installing the TFS plug-in 4.0.0 one of the slaves often fails with

      FATAL: java.lang.NumberFormatException: For input string: ".2001155E4.2001155E4"

      Started by upstream project "7.12/build work" build number 475
      originally caused by:
       Started by an SCM change
      [EnvInject] - Loading node environment variables.
      Building remotely on <machine> (oe11.4 oe10.2b) in workspace d:\jenkins\workspace\7.12\work\build_bl-11.4-oe
      FATAL: java.lang.NumberFormatException: For input string: ".2001155E4.2001155E4"
      java.lang.RuntimeException: java.lang.NumberFormatException: For input string: ".2001155E4.2001155E4"
      	at hudson.plugins.tfs.model.Server.execute(Server.java:110)
      	at hudson.plugins.tfs.model.Project.extractChangesetNumber(Project.java:193)
      	at hudson.plugins.tfs.model.Project.getRemoteChangesetVersion(Project.java:189)
      	at hudson.plugins.tfs.model.Project.getRemoteChangesetVersion(Project.java:205)
      	at hudson.plugins.tfs.TeamFoundationServerScm.recordWorkspaceChangesetVersion(TeamFoundationServerScm.java:262)
      	at hudson.plugins.tfs.TeamFoundationServerScm.checkout(TeamFoundationServerScm.java:211)
      	at hudson.model.AbstractProject.checkout(AbstractProject.java:1277)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:610)
      	at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:532)
      	at hudson.model.Run.execute(Run.java:1741)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      	at hudson.model.ResourceController.execute(ResourceController.java:98)
      	at hudson.model.Executor.run(Executor.java:408)
      Caused by: java.lang.NumberFormatException: For input string: ".2001155E4.2001155E4"
      	at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
      	at java.lang.Double.parseDouble(Unknown Source)
      	at java.text.DigitList.getDouble(Unknown Source)
      	at java.text.DecimalFormat.parse(Unknown Source)
      	at java.text.SimpleDateFormat.subParse(Unknown Source)
      	at java.text.SimpleDateFormat.parse(Unknown Source)
      	at java.text.DateFormat.parse(Unknown Source)
      	at com.microsoft.tfs.util.datetime.LenientDateTimeParser.parseExtended(LenientDateTimeParser.java:295)
      	at com.microsoft.tfs.util.datetime.LenientDateTimeParser.parse(LenientDateTimeParser.java:380)
      	at com.microsoft.tfs.core.clients.versioncontrol.specs.version.DateVersionSpec.<init>(DateVersionSpec.java:59)
      	at com.microsoft.tfs.core.clients.versioncontrol.specs.version.VersionSpec.parseSingleVersionFromSpec(VersionSpec.java:230)
      	at hudson.plugins.tfs.commands.RemoteChangesetVersionCommand.call(RemoteChangesetVersionCommand.java:59)
      	at hudson.plugins.tfs.commands.RemoteChangesetVersionCommand.call(RemoteChangesetVersionCommand.java:33)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:121)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:49)
      	at hudson.remoting.Request$2.run(Request.java:324)
      	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
      	at java.util.concurrent.FutureTask.run(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      	at hudson.remoting.Engine$1$1.run(Engine.java:63)
      	at java.lang.Thread.run(Unknown Source)
      	at ......remote call to <machine>-50(Native Method)
      	at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1413)
      	at hudson.remoting.UserResponse.retrieve(UserRequest.java:221)
      	at hudson.remoting.Channel.call(Channel.java:778)
      	at hudson.plugins.tfs.model.Server.execute(Server.java:106)
      	... 13 more
      

      A build around the same time on the same slave did not fail:

      Started by upstream project "7.12/build work" build number 475
      originally caused by:
       Started by an SCM change
      [EnvInject] - Loading node environment variables.
      Building remotely on <machine> (oe11.4 oe10.2b) in workspace d:\jenkins\workspace\7.12\work\build_ws-11.4
      Querying for remote changeset at '$/<product>/7.12/work' as of 'D2015-09-10T08:10:36Z'...
      Query result is: Changeset #208683 by '<domain>\<user>' on '2015-09-10T08:08:46Z'.
      

      Both these builds were started in parallel.

      It would seem that querying for remote changeset is sometimes failing to format the datetime correctly?

      Update. Just had one of a parallel pair complain - the invalid input string is identical to the previous fatal:

      Started by upstream project "7.12/build work" build number 483
      originally caused by:
       Started by user <user>
      [EnvInject] - Loading node environment variables.
      Building remotely on <machine> (oe11.4 windows oe10.2b) in workspace d:\jenkins\workspace\7.12\work\build_bl-11.4-oe
      FATAL: java.lang.NumberFormatException: For input string: ".2001155E4.2001155E4"
      java.lang.RuntimeException: java.lang.NumberFormatException: For input string: ".2001155E4.2001155E4"
      	at hudson.plugins.tfs.model.Server.execute(Server.java:110)
      
      Started by upstream project "7.12/build work" build number 483
      originally caused by:
       Started by user <user>
      [EnvInject] - Loading node environment variables.
      Building remotely on <machine> (oe11.4 windows oe10.2b) in workspace d:\jenkins\workspace\7.12\work\build_ws-11.4
      Querying for remote changeset at '$/<product>/7.12/work' as of 'D2015-09-11T20:53:17Z'...
      Query result is: Changeset #208741 by '<domain>\<user>' on '2015-09-11T10:42:18Z'.
      

      Update 2015-09-13: and another one of a parallel pair complained - the difference with the previous results is that the input string is empty:

      Successful start:

      Started by upstream project "7.20/build work" build number 28
      originally caused by:
       Started by an SCM change
       Started by an SCM change
       Started by an SCM change
      [EnvInject] - Loading node environment variables.
      Building remotely on <machine-50> (oe11.4 windows oe10.2b) in workspace d:\jenkins\workspace\7.20\work\build_bp-11.4
      Querying for remote changeset at '$/<product>/7.20/work' as of 'D2015-09-13T20:02:26Z'...
      

      Failed start:

      Started by upstream project "7.20/build work" build number 28
      originally caused by:
       Started by an SCM change
       Started by an SCM change
       Started by an SCM change
      [EnvInject] - Loading node environment variables.
      Building remotely on <machine-50> (oe11.4 windows oe10.2b) in workspace d:\jenkins\workspace\7.20\work\build_bl-11.4-oracle
      FATAL: java.lang.NumberFormatException: For input string: ""
      java.lang.RuntimeException: java.lang.NumberFormatException: For input string: ""
      	at hudson.plugins.tfs.model.Server.execute(Server.java:110)
      

      Update 2015-09-14: something else came in throwing the datetime handler in a new way:

      Building remotely on <machine>-50 (oe11.4 windows oe10.2b) in workspace d:\jenkins\workspace\7.20\work\build_ws-11.4
      FATAL: java.lang.ArrayIndexOutOfBoundsException: -1
      java.lang.RuntimeException: java.lang.ArrayIndexOutOfBoundsException: -1
      	at hudson.plugins.tfs.model.Server.execute(Server.java:110)
      	at hudson.plugins.tfs.model.Project.extractChangesetNumber(Project.java:193)
      	at hudson.plugins.tfs.model.Project.getRemoteChangesetVersion(Project.java:189)
      	at hudson.plugins.tfs.model.Project.getRemoteChangesetVersion(Project.java:205)
      	at hudson.plugins.tfs.TeamFoundationServerScm.recordWorkspaceChangesetVersion(TeamFoundationServerScm.java:262)
      	at hudson.plugins.tfs.TeamFoundationServerScm.checkout(TeamFoundationServerScm.java:211)
      	at hudson.model.AbstractProject.checkout(AbstractProject.java:1277)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:610)
      	at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:532)
      	at hudson.model.Run.execute(Run.java:1741)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      	at hudson.model.ResourceController.execute(ResourceController.java:98)
      	at hudson.model.Executor.run(Executor.java:408)
      Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
      	at java.text.DigitList.fitsIntoLong(Unknown Source)
      	at java.text.DecimalFormat.parse(Unknown Source)
      	at java.text.SimpleDateFormat.subParse(Unknown Source)
      	at java.text.SimpleDateFormat.parse(Unknown Source)
      	at java.text.DateFormat.parse(Unknown Source)
      	at com.microsoft.tfs.util.datetime.LenientDateTimeParser.parseExtended(LenientDateTimeParser.java:295)
              at com.microsoft.tfs.util.datetime.LenientDateTimeParser.parse(LenientDateTimeParser.java:380)
      	at com.microsoft.tfs.core.clients.versioncontrol.specs.version.DateVersionSpec.<init>(DateVersionSpec.java:59)
      	at com.microsoft.tfs.core.clients.versioncontrol.specs.version.VersionSpec.parseSingleVersionFromSpec(VersionSpec.java:230)
      	at hudson.plugins.tfs.commands.RemoteChangesetVersionCommand.call(RemoteChangesetVersionCommand.java:59)
      	at hudson.plugins.tfs.commands.RemoteChangesetVersionCommand.call(RemoteChangesetVersionCommand.java:33)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:121)
      	at hudson.remoting.UserRequest.perform(UserRequest.java:49)
      	at hudson.remoting.Request$2.run(Request.java:326)
      	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
      	at java.util.concurrent.FutureTask.run(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      	at hudson.remoting.Engine$1$1.run(Engine.java:69)
      	at java.lang.Thread.run(Unknown Source)
      	at ......remote call to <machine>-50(Native Method)
      

      Update 2015-09-16 - now a build being performed on the master (with a slave orchestrating the multijob build) is failing:

      Started by upstream project "7.20/build work" build number 52
      originally caused by:
       Started by user <user>
      [EnvInject] - Loading node environment variables.
      Building on master in workspace C:\Program Files (x86)\Jenkins\jobs\7.20\jobs\work\jobs\build_ws-11.4\workspace
      FATAL: java.lang.NumberFormatException: For input string: "E.420155"
      java.lang.RuntimeException: java.lang.NumberFormatException: For input string: "E.420155"
      

            dastahel David Staheli
            smd Stefan Drissen
            Votes:
            2 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: