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

After upgrading to 1.517 fingerprinting seems to hang

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Critical
    • Resolution: Cannot Reproduce
    • Component/s: core, fingerprint-plugin
    • Labels:
      None
    • Environment:
      Windows 7 64 Bit/Windows 2008 Server R2
    • Similar Issues:

      Description

      After upgrading to 1.517 I was hit by a problem with fingerprinting. I am not sure if it is core related please reassign if appropriate.

      I am fingerprinting a file in the upstream build process, pack several 100 files and assembles via scm clone workspace plugin and start about 50 unit test jobs on a bunch of slaves. After testing the downstream unit test project fingerprints the same file to be able to track the changes of the upstream project.

      With 1.517 now it happens that the fingerprinting seems to hang so that the workspace can not be cleaned up after testing:

      17:35:31 Recording fingerprints
      17:35:31 No emails were triggered.
      17:35:31
      17:35:31 Deleting project workspace...
      17:35:49 Cannot delete workspace: java.nio.file.FileSystemException: C:\WS\SscuMimoVar13Tests\ContestContinuous\contest_sw\Bin\Debug\CommonTypes.dll: The process cannot access the file because it is being used by another process.
      17:35:49
      17:35:49 Option not to fail the build is turned on, so let's continue
      17:35:49 Notifying upstream projects of job completion
      17:35:49 Finished: SUCCESS

      Starting the next test some time later on the same machine leads to a failure because the old workspace can not be deleted because the file to fingerprint is still "in use by another process". Downgrading to 1.516 fixes the problem for me (but I had to restart all the slave Services). The problem also occured on my master, it was not related to slaves only.

      17:36:11 Started by upstream project "ContestContinuous" build number 16910
      17:36:11 originally caused by:
      17:36:11 Started by an SCM change
      17:36:11 [EnvInject] - Loading node environment variables.
      17:36:11 Building remotely on 1SP1-SLAVE8 in workspace C:\WS\SscuMimoVar13Tests
      17:36:11 hudson.util.IOException2: remote file operation failed: C:\WS\SscuMimoVar13Tests at hudson.remoting.Channel@191b66bf:1SP1-SLAVE8
      17:36:11 at hudson.FilePath.act(FilePath.java:901)
      17:36:11 at hudson.FilePath.act(FilePath.java:878)
      17:36:11 at hudson.FilePath.deleteContents(FilePath.java:1050)
      17:36:11 at hudson.plugins.cloneworkspace.CloneWorkspaceSCM.checkout(CloneWorkspaceSCM.java:145)
      17:36:11 at hudson.model.AbstractProject.checkout(AbstractProject.java:1369)
      17:36:11 at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:676)
      17:36:11 at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
      17:36:11 at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:581)
      17:36:11 at hudson.model.Run.execute(Run.java:1576)
      17:36:11 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      17:36:11 at hudson.model.ResourceController.execute(ResourceController.java:88)
      17:36:11 at hudson.model.Executor.run(Executor.java:241)
      17:36:11 Caused by: java.nio.file.FileSystemException: C:\WS\SscuMimoVar13Tests\ContestContinuous\contest_sw\Bin\Debug\CommonTypes.dll: The process cannot access the file because it is being used by another process.
      17:36:11
      17:36:11 at sun.nio.fs.WindowsException.translateToIOException(Unknown Source)
      17:36:11 at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
      17:36:11 at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
      17:36:11 at sun.nio.fs.WindowsFileSystemProvider.implDelete(Unknown Source)
      17:36:11 at sun.nio.fs.AbstractFileSystemProvider.delete(Unknown Source)
      17:36:11 at java.nio.file.Files.delete(Unknown Source)
      17:36:11 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      17:36:11 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      17:36:11 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      17:36:11 at java.lang.reflect.Method.invoke(Unknown Source)
      17:36:11 at hudson.Util.deleteFile(Util.java:237)
      17:36:11 at hudson.Util.deleteRecursive(Util.java:305)
      17:36:11 at hudson.Util.deleteContentsRecursive(Util.java:202)
      17:36:11 at hudson.Util.deleteRecursive(Util.java:296)
      17:36:11 at hudson.Util.deleteContentsRecursive(Util.java:202)
      17:36:11 at hudson.Util.deleteRecursive(Util.java:296)
      17:36:11 at hudson.Util.deleteContentsRecursive(Util.java:202)
      17:36:11 at hudson.Util.deleteRecursive(Util.java:296)
      17:36:11 at hudson.Util.deleteContentsRecursive(Util.java:202)
      17:36:11 at hudson.Util.deleteRecursive(Util.java:296)
      17:36:11 at hudson.Util.deleteContentsRecursive(Util.java:202)
      17:36:11 at hudson.FilePath$12.invoke(FilePath.java:1053)
      17:36:11 at hudson.FilePath$12.invoke(FilePath.java:1050)
      17:36:11 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2388)
      17:36:11 at hudson.remoting.UserRequest.perform(UserRequest.java:118)
      17:36:11 at hudson.remoting.UserRequest.perform(UserRequest.java:48)
      17:36:11 at hudson.remoting.Request$2.run(Request.java:326)
      17:36:11 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
      17:36:11 at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
      17:36:11 at java.util.concurrent.FutureTask.run(Unknown Source)
      17:36:11 at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      17:36:11 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      17:36:11 at hudson.remoting.Engine$1$1.run(Engine.java:58)
      17:36:11 at java.lang.Thread.run(Unknown Source)

      Here on the master:
      17:01:28 Started by upstream project "ContestContinuous" build number 16906
      17:01:28 originally caused by:
      17:01:28 Started by an SCM change
      17:01:28 [EnvInject] - Loading node environment variables.
      17:01:28 Building on master in workspace D:\WS\ScenarioServiceSscuMimoTests
      17:01:28 java.nio.file.FileSystemException: D:\WS\ScenarioServiceSscuMimoTests\ContestContinuous\contest_sw\Bin\Debug\CommonTypes.dll: The process cannot access the file because it is being used by another process.
      17:01:28

        Attachments

          Issue Links

            Activity

            Hide
            bruce Dirk Kuypers added a comment -

            After upgrading to 1.520 I cannot reproduce the problem anymore. Maybe it was fixed by all the fingerprinting changes since then, maybe my problem was only a problem at my site...

            Show
            bruce Dirk Kuypers added a comment - After upgrading to 1.520 I cannot reproduce the problem anymore. Maybe it was fixed by all the fingerprinting changes since then, maybe my problem was only a problem at my site...
            Hide
            brian3791 Brian Brooks added a comment -

            I'm having a similar issue with Jenkins 1.517 on Windows 2008 64-bit Oracle JVM. When using the native-maven-plugin in a Jenkins job, hudson.maven.reporters.MavenFingerprinter is leaving a file locked which System.gc() cleans up but in the interim causes "The process cannot access the file because it is being used by another process". Just putting a comment here in case someone else is affected by the issue. I'm going to try and upgrade to at least Jenkins 1.523 and see if the issue is resolved.

            I had previously filed a ticket against the native-maven-plugin but after an extended debug session, the culprit apepars to be the MavenFingerprinter.
            1.0-alpha-7 manifest goal mt.exe : general error c101008d: Failed to write the updated manifest to the resource of file The process cannot access the file because it is being used by another process
            http://jira.codehaus.org/browse/MOJO-1941.

            Show
            brian3791 Brian Brooks added a comment - I'm having a similar issue with Jenkins 1.517 on Windows 2008 64-bit Oracle JVM. When using the native-maven-plugin in a Jenkins job, hudson.maven.reporters.MavenFingerprinter is leaving a file locked which System.gc() cleans up but in the interim causes "The process cannot access the file because it is being used by another process". Just putting a comment here in case someone else is affected by the issue. I'm going to try and upgrade to at least Jenkins 1.523 and see if the issue is resolved. I had previously filed a ticket against the native-maven-plugin but after an extended debug session, the culprit apepars to be the MavenFingerprinter. 1.0-alpha-7 manifest goal mt.exe : general error c101008d: Failed to write the updated manifest to the resource of file The process cannot access the file because it is being used by another process http://jira.codehaus.org/browse/MOJO-1941 .

              People

              • Assignee:
                marcsanfacon Marc Sanfacon
                Reporter:
                bruce Dirk Kuypers
              • Votes:
                1 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: