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

CreateProcess error=87, The parameter is incorrect

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved (View Workflow)
    • Major
    • Resolution: Cannot Reproduce
    • envinject-plugin
    • None
    • Windows Server 2008 Enterprise

    Description

      On Jenkins we have envInject installed as version 0.21
      That works fine.

      After upgrade to 1.72 polling with hg and restarting Jenkins and dosTrigger polling starts failing with the error message "CreateProcess error=87, The parameter is incorrect".

      After downgrading the plugin everything works fine again.

      Attachments

        Issue Links

          Activity

            0.21 is a very old version for the EnvInject plugin.
            Each new version keeps backward compatibility (at least in theory, i try).

            Maybe, I missed a thing with the dostrigger plugin.

            I can try to reproduce the problem.
            Please could you attach your job configuration file (confg.xml)?

            gbois Gregory Boissinot added a comment - 0.21 is a very old version for the EnvInject plugin. Each new version keeps backward compatibility (at least in theory, i try). Maybe, I missed a thing with the dostrigger plugin. I can try to reproduce the problem. Please could you attach your job configuration file (confg.xml)?
            jbraad Jakob Braad added a comment -

            Hi Gregory

            We know 0.21 is old, but it is working
            1.72 is giving the problem. I have tried to reproduce it on my PC (Win XP) without success.
            I can only get the error on the Windows 2008 Server Enterprise with Service Pack 2.
            Now we are running with 0.21 without problems. I can't test a lot of things as a lot of colleagues depends on the server running.

            I have tried googling the error and it indicates that classpath is more than 8191 characters. I don't know if this can help you in any way.

            Building the job below has no problems calling hg, but the polling every minute fails with the error.

            <?xml version='1.0' encoding='UTF-8'?>
            <project>
            <actions/>
            <description></description>
            <logRotator>
            <daysToKeep>-1</daysToKeep>
            <numToKeep>20</numToKeep>
            <artifactDaysToKeep>-1</artifactDaysToKeep>
            <artifactNumToKeep>-1</artifactNumToKeep>
            </logRotator>
            <keepDependencies>false</keepDependencies>
            <properties>
            <hudson.model.ParametersDefinitionProperty>
            <parameterDefinitions>
            <hudson.model.StringParameterDefinition>
            <name>Datapakke</name>
            <description>Version for datapakken. Formatet skal være i stil med "173.6" (uden gåseøjne). Hvis den tomme streng angives benyttes samme datapakke som sidst. Skrive "nyeste" (uden gåseøjne og med små bogstaver) for at bruge den nyeste datapakke i dette og efterfølgende byg.</description>
            <defaultValue></defaultValue>
            </hudson.model.StringParameterDefinition>
            </parameterDefinitions>
            </hudson.model.ParametersDefinitionProperty>
            <de.pellepelster.jenkins.walldisplay.WallDisplayJobProperty plugin="jenkinswalldisplay@0.6.13"/>
            </properties>
            <scm class="hudson.plugins.mercurial.MercurialSCM" plugin="mercurial@1.41">
            <installation>(Default)</installation>
            <source>https://hg.dsb.dk/nautila/komponenter</source>
            <modules></modules>
            <clean>false</clean>
            <browser class="hudson.plugins.mercurial.browser.HgWeb">
            <url>https://hg.dsb.dk/nautila/komponenter/</url>
            </browser>
            </scm>
            <assignedNode>master</assignedNode>
            <canRoam>false</canRoam>
            <disabled>false</disabled>
            <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
            <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
            <jdk>JDK1.5.0</jdk>
            <triggers class="vector">
            <hudson.triggers.SCMTrigger>
            <spec>* * * * *</spec>
            </hudson.triggers.SCMTrigger>
            <org.jenkinsci.plugins.dostrigger.DosTrigger plugin="dos-trigger@1.23">
            <spec>* * * * *</spec>
            <script>if exist c:\temp\use_specific_stamdata_version.txt exit
            dir \\10.35.14.34\admi\komponenter\stamdata /ad /o-d /b | findstr /n "^.*$" | findstr "^1:" >c:\temp\faelleskomponenter.latest_stamdata_dir
            for /f "tokens=2 delims=:" %%i in (c:\temp\faelleskomponenter.latest_stamdata_dir) do echo xcopy /y /d /l \\10.35.14.34\admi\komponenter\stamdata%%i\nautilastamdata.jar c:\faelleskomponenter ^| findstr "nautilastamdata.jar" >c:\temp\faelleskomponenter_is_updated.bat
            echo if %%ERRORLEVEL%% equ 0 (>>c:\temp\faelleskomponenter_is_updated.bat
            echo set cause=Datapakken er opdateret>>c:\temp\faelleskomponenter_is_updated.bat
            echo )>>c:\temp\faelleskomponenter_is_updated.bat
            call c:\temp\faelleskomponenter_is_updated.bat
            del c:\temp\faelleskomponenter.latest_stamdata_dir
            del c:\temp\faelleskomponenter_is_updated.bat</script>
            <nextBuildNum>0</nextBuildNum>
            </org.jenkinsci.plugins.dostrigger.DosTrigger>
            </triggers>
            <concurrentBuild>false</concurrentBuild>
            <builders>
            <hudson.tasks.BatchFile>
            <command>if not "%Datapakke%" == "" echo %Datapakke%>c:\temp\use_specific_stamdata_version.txt
            if "%Datapakke%" == "nyeste" del c:\temp\use_specific_stamdata_version.txt
            </command>
            </hudson.tasks.BatchFile>
            <hudson.tasks.Ant plugin="ant@1.1">
            <targets>updateWS all</targets>
            <antName>(Default)</antName>
            <buildFile>Build\ant\build.xml</buildFile>
            </hudson.tasks.Ant>
            </builders>
            <publishers>
            <hudson.tasks.ArtifactArchiver>
            <artifacts>Build/build/dist/*, Build/lib/remote-ejb.jar</artifacts>
            <latestOnly>true</latestOnly>
            </hudson.tasks.ArtifactArchiver>
            <hudson.tasks.BuildTrigger>
            <childProjects>Nautila</childProjects>
            <threshold>
            <name>SUCCESS</name>
            <ordinal>0</ordinal>
            <color>BLUE</color>
            </threshold>
            </hudson.tasks.BuildTrigger>
            <hudson.tasks.Fingerprinter>
            <targets></targets>
            <recordBuildArtifacts>true</recordBuildArtifacts>
            </hudson.tasks.Fingerprinter>
            <hudson.tasks.Mailer>
            <recipients></recipients>
            <dontNotifyEveryUnstableBuild>false</dontNotifyEveryUnstableBuild>
            <sendToIndividuals>false</sendToIndividuals>
            </hudson.tasks.Mailer>
            </publishers>
            <buildWrappers/>
            </project>

            jbraad Jakob Braad added a comment - Hi Gregory We know 0.21 is old, but it is working 1.72 is giving the problem. I have tried to reproduce it on my PC (Win XP) without success. I can only get the error on the Windows 2008 Server Enterprise with Service Pack 2. Now we are running with 0.21 without problems. I can't test a lot of things as a lot of colleagues depends on the server running. I have tried googling the error and it indicates that classpath is more than 8191 characters. I don't know if this can help you in any way. Building the job below has no problems calling hg, but the polling every minute fails with the error. <?xml version='1.0' encoding='UTF-8'?> <project> <actions/> <description></description> <logRotator> <daysToKeep>-1</daysToKeep> <numToKeep>20</numToKeep> <artifactDaysToKeep>-1</artifactDaysToKeep> <artifactNumToKeep>-1</artifactNumToKeep> </logRotator> <keepDependencies>false</keepDependencies> <properties> <hudson.model.ParametersDefinitionProperty> <parameterDefinitions> <hudson.model.StringParameterDefinition> <name>Datapakke</name> <description>Version for datapakken. Formatet skal være i stil med "173.6" (uden gåseøjne). Hvis den tomme streng angives benyttes samme datapakke som sidst. Skrive "nyeste" (uden gåseøjne og med små bogstaver) for at bruge den nyeste datapakke i dette og efterfølgende byg.</description> <defaultValue></defaultValue> </hudson.model.StringParameterDefinition> </parameterDefinitions> </hudson.model.ParametersDefinitionProperty> <de.pellepelster.jenkins.walldisplay.WallDisplayJobProperty plugin="jenkinswalldisplay@0.6.13"/> </properties> <scm class="hudson.plugins.mercurial.MercurialSCM" plugin="mercurial@1.41"> <installation>(Default)</installation> <source> https://hg.dsb.dk/nautila/komponenter </source> <modules></modules> <clean>false</clean> <browser class="hudson.plugins.mercurial.browser.HgWeb"> <url> https://hg.dsb.dk/nautila/komponenter/ </url> </browser> </scm> <assignedNode>master</assignedNode> <canRoam>false</canRoam> <disabled>false</disabled> <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding> <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding> <jdk>JDK1.5.0</jdk> <triggers class="vector"> <hudson.triggers.SCMTrigger> <spec>* * * * *</spec> </hudson.triggers.SCMTrigger> <org.jenkinsci.plugins.dostrigger.DosTrigger plugin="dos-trigger@1.23"> <spec>* * * * *</spec> <script>if exist c:\temp\use_specific_stamdata_version.txt exit dir \\10.35.14.34\admi\komponenter\stamdata /ad /o-d /b | findstr /n "^.*$" | findstr "^1:" >c:\temp\faelleskomponenter.latest_stamdata_dir for /f "tokens=2 delims=:" %%i in (c:\temp\faelleskomponenter.latest_stamdata_dir) do echo xcopy /y /d /l \\10.35.14.34\admi\komponenter\stamdata%%i\nautilastamdata.jar c:\faelleskomponenter ^| findstr "nautilastamdata.jar" >c:\temp\faelleskomponenter_is_updated.bat echo if %%ERRORLEVEL%% equ 0 (>>c:\temp\faelleskomponenter_is_updated.bat echo set cause=Datapakken er opdateret>>c:\temp\faelleskomponenter_is_updated.bat echo )>>c:\temp\faelleskomponenter_is_updated.bat call c:\temp\faelleskomponenter_is_updated.bat del c:\temp\faelleskomponenter.latest_stamdata_dir del c:\temp\faelleskomponenter_is_updated.bat</script> <nextBuildNum>0</nextBuildNum> </org.jenkinsci.plugins.dostrigger.DosTrigger> </triggers> <concurrentBuild>false</concurrentBuild> <builders> <hudson.tasks.BatchFile> <command>if not "%Datapakke%" == "" echo %Datapakke%>c:\temp\use_specific_stamdata_version.txt if "%Datapakke%" == "nyeste" del c:\temp\use_specific_stamdata_version.txt </command> </hudson.tasks.BatchFile> <hudson.tasks.Ant plugin="ant@1.1"> <targets>updateWS all</targets> <antName>(Default)</antName> <buildFile>Build\ant\build.xml</buildFile> </hudson.tasks.Ant> </builders> <publishers> <hudson.tasks.ArtifactArchiver> <artifacts>Build/build/dist/*, Build/lib/remote-ejb.jar</artifacts> <latestOnly>true</latestOnly> </hudson.tasks.ArtifactArchiver> <hudson.tasks.BuildTrigger> <childProjects>Nautila</childProjects> <threshold> <name>SUCCESS</name> <ordinal>0</ordinal> <color>BLUE</color> </threshold> </hudson.tasks.BuildTrigger> <hudson.tasks.Fingerprinter> <targets></targets> <recordBuildArtifacts>true</recordBuildArtifacts> </hudson.tasks.Fingerprinter> <hudson.tasks.Mailer> <recipients></recipients> <dontNotifyEveryUnstableBuild>false</dontNotifyEveryUnstableBuild> <sendToIndividuals>false</sendToIndividuals> </hudson.tasks.Mailer> </publishers> <buildWrappers/> </project>
            alex_okrushko Alex Okrushko added a comment -

            I have the same problem, however this happens only on master and only when I use in combination with Node and Label parameter plugin (e.g. set the node as "master"):

            Started by upstream project "run_everywhere" build number 21
            originally caused by:
            Started by user alexo
            [EnvInject] - Loading node environment variables.
            Building on master in workspace C:\Users\alexo\jenkins\jobs\run_cmd\workspace\default
            Updating https://server.com/trunk/ to revision '2012-10-24T11:59:51.563 -0400'
            At revision 60
            [default] $ cmd /c call C:\Windows\TEMP\hudson8635809542653204475.bat
            The parameter is incorrect
            FATAL: command execution failed
            java.io.IOException: Cannot run program "cmd" (in directory "C:\Users\alexo\jenkins\jobs\run_cmd\workspace\default"): CreateProcess error=87, The parameter is incorrect
            at java.lang.ProcessBuilder.start(Unknown Source)
            at hudson.Proc$LocalProc.<init>(Proc.java:244)
            at hudson.Proc$LocalProc.<init>(Proc.java:216)
            at hudson.Launcher$LocalLauncher.launch(Launcher.java:716)
            at hudson.Launcher$ProcStarter.start(Launcher.java:345)
            at hudson.Launcher$ProcStarter.join(Launcher.java:352)
            at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:82)
            at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:58)
            at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
            at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:717)
            at hudson.model.Build$BuildExecution.build(Build.java:199)
            at hudson.model.Build$BuildExecution.doRun(Build.java:160)
            at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499)
            at hudson.model.Run.execute(Run.java:1502)
            at hudson.matrix.MatrixRun.run(MatrixRun.java:146)
            at hudson.model.ResourceController.execute(ResourceController.java:88)
            at hudson.model.Executor.run(Executor.java:236)
            Caused by: java.io.IOException: CreateProcess error=87, The parameter is incorrect
            at java.lang.ProcessImpl.create(Native Method)
            at java.lang.ProcessImpl.<init>(Unknown Source)
            at java.lang.ProcessImpl.start(Unknown Source)
            ... 17 more
            Build step 'Execute Windows batch command' marked build as failure
            Finished: FAILURE

            alex_okrushko Alex Okrushko added a comment - I have the same problem, however this happens only on master and only when I use in combination with Node and Label parameter plugin (e.g. set the node as "master"): Started by upstream project "run_everywhere" build number 21 originally caused by: Started by user alexo [EnvInject] - Loading node environment variables. Building on master in workspace C:\Users\alexo\jenkins\jobs\run_cmd\workspace\default Updating https://server.com/trunk/ to revision '2012-10-24T11:59:51.563 -0400' At revision 60 [default] $ cmd /c call C:\Windows\TEMP\hudson8635809542653204475.bat The parameter is incorrect FATAL: command execution failed java.io.IOException: Cannot run program "cmd" (in directory "C:\Users\alexo\jenkins\jobs\run_cmd\workspace\default"): CreateProcess error=87, The parameter is incorrect at java.lang.ProcessBuilder.start(Unknown Source) at hudson.Proc$LocalProc.<init>(Proc.java:244) at hudson.Proc$LocalProc.<init>(Proc.java:216) at hudson.Launcher$LocalLauncher.launch(Launcher.java:716) at hudson.Launcher$ProcStarter.start(Launcher.java:345) at hudson.Launcher$ProcStarter.join(Launcher.java:352) at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:82) at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:58) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:717) at hudson.model.Build$BuildExecution.build(Build.java:199) at hudson.model.Build$BuildExecution.doRun(Build.java:160) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499) at hudson.model.Run.execute(Run.java:1502) at hudson.matrix.MatrixRun.run(MatrixRun.java:146) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:236) Caused by: java.io.IOException: CreateProcess error=87, The parameter is incorrect at java.lang.ProcessImpl.create(Native Method) at java.lang.ProcessImpl.<init>(Unknown Source) at java.lang.ProcessImpl.start(Unknown Source) ... 17 more Build step 'Execute Windows batch command' marked build as failure Finished: FAILURE

            I'm afraid I'm closing the issue because I can't reproduce it.
            Please try to isolate the problem from the other plugins and raise a new issue.

            gbois Gregory Boissinot added a comment - I'm afraid I'm closing the issue because I can't reproduce it. Please try to isolate the problem from the other plugins and raise a new issue.
            kopfwunde Jan Seidel added a comment -

            I was able to reproduce exactly this error.
            New newly created and almost empty job kept failing. So I started analyzing the cause.
            It is a parametrized build job like Jakob's but I can't see a related configuration issue in his config.xml.

            In my case was a parameter with a value.
            The message is not very clear about it, but maybe it helps you to track down the cause if you should run into a similar message.

            kopfwunde Jan Seidel added a comment - I was able to reproduce exactly this error. New newly created and almost empty job kept failing. So I started analyzing the cause. It is a parametrized build job like Jakob's but I can't see a related configuration issue in his config.xml. In my case was a parameter with a value. The message is not very clear about it, but maybe it helps you to track down the cause if you should run into a similar message.
            oleg_nenashev Oleg Nenashev added a comment -

            Linked the issue with JENKINS-22183, where the same issue appears in jobs, where custom-tools and envinject work together.

            I'm not sure the issues are duplicates but I hope it will provide some additional info for analysis

            oleg_nenashev Oleg Nenashev added a comment - Linked the issue with JENKINS-22183 , where the same issue appears in jobs, where custom-tools and envinject work together. I'm not sure the issues are duplicates but I hope it will provide some additional info for analysis

            I was able to reproduce Alex Okrushko's problem with my Jenkins (vers. 1.590) and the Node and Label parameter plugin version 1.5.1. My test job has nothing to do except of executing the following Windows batch command: echo %JOB_NAME%. I have installed a Jenkins master and slave node (both running as Windows services, the master with an local administration account, the slave with an domain user account) on the same machine. The problem occurs independently of the chosen node.

            florianreiser Florian Reiser added a comment - I was able to reproduce Alex Okrushko's problem with my Jenkins (vers. 1.590) and the Node and Label parameter plugin version 1.5.1. My test job has nothing to do except of executing the following Windows batch command: echo %JOB_NAME%. I have installed a Jenkins master and slave node (both running as Windows services, the master with an local administration account, the slave with an domain user account) on the same machine. The problem occurs independently of the chosen node.

            People

              gbois Gregory Boissinot
              jbraad Jakob Braad
              Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: