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

Util.deleteRecursive fails for files using unmappable characters

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • core
    • Ubuntu 11.04 64 Bits, Jenkins ver. 1.450

      Hi,

      I am having issue to delete project, I am getting the following error

      Status Code: 500

      Exception:
      Stacktrace:
      java.io.IOException: Unable to delete /var/lib/jenkins/jobs/loteriafacilnet/workspace/public/images - files in dir: [/var/lib/jenkins/jobs/loteriafacilnet/workspace/public/images/footer_bg - C�pia.gif, /var/lib/jenkins/jobs/loteriafacilnet/workspace/public/images/fbg_bg - C�pia.gif]
      at hudson.Util.deleteFile(Util.java:236)
      at hudson.Util.deleteRecursive(Util.java:287)
      at hudson.Util.deleteContentsRecursive(Util.java:198)
      at hudson.Util.deleteRecursive(Util.java:278)
      at hudson.Util.deleteContentsRecursive(Util.java:198)
      at hudson.Util.deleteRecursive(Util.java:278)
      at hudson.Util.deleteContentsRecursive(Util.java:198)
      at hudson.Util.deleteRecursive(Util.java:278)
      at hudson.model.AbstractItem.performDelete(AbstractItem.java:530)
      at hudson.model.Job.performDelete(Job.java:215)
      at hudson.model.AbstractProject.performDelete(AbstractProject.java:286)
      at hudson.model.AbstractItem.delete(AbstractItem.java:506)
      at hudson.model.AbstractProject.doDoDelete(AbstractProject.java:1655)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:616)
      at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:282)
      at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:149)
      at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:88)
      at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:648)
      at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:648)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:477)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:159)
      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 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.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:61)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      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 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:244)
      at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
      at java.lang.Thread.run(Thread.java:679)

      Generated by Winstone Servlet Engine v0.9.10 at Wed Feb 01 00:27:36 UTC 2012

          [JENKINS-12610] Util.deleteRecursive fails for files using unmappable characters

          Alex Lehmann added a comment -

          that is likely a character encoding issue, since you have an accented character in your filename,

          unless you want to delete the files manually on the linux shell, you could check if you can change the LANG environment when starting jenkins, e.g. export LANG=en_US.utf8 or export LANG=en_US.ISO-8859-1
          before starting the winstone server.

          Alex Lehmann added a comment - that is likely a character encoding issue, since you have an accented character in your filename, unless you want to delete the files manually on the linux shell, you could check if you can change the LANG environment when starting jenkins, e.g. export LANG=en_US.utf8 or export LANG=en_US.ISO-8859-1 before starting the winstone server.

          Dan Stangel added a comment -

          Just wanted to confirm that I'm also seeing this behavior when attempting to clean up a workspace with files named with non-standard characters. Also I have LANG=en_US.UTF-8 set in my Jenkins environment.

          Started by upstream project "Fossology_Installation" build number 99
          Building on master
          Cleaning local Directory .
          java.io.IOException: Unable to delete /home/jenkins/jobs/Fossology_Unit_Tests/workspace/./src/ununpack/agent_tests/Unit/test-result/threezip.zip.dir/Desktop.zip.dir - files in dir: [/home/jenkins/jobs/Fossology_Unit_Tests/workspace/./src/ununpack/agent_tests/Unit/test-result/threezip.zip.dir/Desktop.zip.dir/�-�� +-��+-��.txt]
          at hudson.Util.deleteFile(Util.java:265)
          at hudson.Util.deleteRecursive(Util.java:316)
          at hudson.Util.deleteContentsRecursive(Util.java:227)
          at hudson.Util.deleteRecursive(Util.java:307)
          at hudson.Util.deleteContentsRecursive(Util.java:227)
          at hudson.Util.deleteRecursive(Util.java:307)
          at hudson.Util.deleteContentsRecursive(Util.java:227)
          at hudson.Util.deleteRecursive(Util.java:307)
          at hudson.Util.deleteContentsRecursive(Util.java:227)
          at hudson.Util.deleteRecursive(Util.java:307)
          at hudson.Util.deleteContentsRecursive(Util.java:227)
          at hudson.Util.deleteRecursive(Util.java:307)
          at hudson.Util.deleteContentsRecursive(Util.java:227)
          at hudson.Util.deleteRecursive(Util.java:307)
          at hudson.Util.deleteContentsRecursive(Util.java:227)
          at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:71)
          at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:136)
          at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:788)
          at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:769)
          at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:753)
          at hudson.FilePath.act(FilePath.java:758)
          at hudson.FilePath.act(FilePath.java:740)
          at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:743)
          at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:685)
          at hudson.model.AbstractProject.checkout(AbstractProject.java:1193)
          at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:565)
          at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:453)
          at hudson.model.Run.run(Run.java:1376)
          at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
          at hudson.model.ResourceController.execute(ResourceController.java:88)
          at hudson.model.Executor.run(Executor.java:175)

          Dan Stangel added a comment - Just wanted to confirm that I'm also seeing this behavior when attempting to clean up a workspace with files named with non-standard characters. Also I have LANG=en_US.UTF-8 set in my Jenkins environment. Started by upstream project "Fossology_Installation" build number 99 Building on master Cleaning local Directory . java.io.IOException: Unable to delete /home/jenkins/jobs/Fossology_Unit_Tests/workspace/./src/ununpack/agent_tests/Unit/test-result/threezip.zip.dir/Desktop.zip.dir - files in dir: [/home/jenkins/jobs/Fossology_Unit_Tests/workspace/./src/ununpack/agent_tests/Unit/test-result/threezip.zip.dir/Desktop.zip.dir/�-�� +-��+-��.txt] at hudson.Util.deleteFile(Util.java:265) at hudson.Util.deleteRecursive(Util.java:316) at hudson.Util.deleteContentsRecursive(Util.java:227) at hudson.Util.deleteRecursive(Util.java:307) at hudson.Util.deleteContentsRecursive(Util.java:227) at hudson.Util.deleteRecursive(Util.java:307) at hudson.Util.deleteContentsRecursive(Util.java:227) at hudson.Util.deleteRecursive(Util.java:307) at hudson.Util.deleteContentsRecursive(Util.java:227) at hudson.Util.deleteRecursive(Util.java:307) at hudson.Util.deleteContentsRecursive(Util.java:227) at hudson.Util.deleteRecursive(Util.java:307) at hudson.Util.deleteContentsRecursive(Util.java:227) at hudson.Util.deleteRecursive(Util.java:307) at hudson.Util.deleteContentsRecursive(Util.java:227) at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:71) at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:136) at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:788) at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:769) at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:753) at hudson.FilePath.act(FilePath.java:758) at hudson.FilePath.act(FilePath.java:740) at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:743) at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:685) at hudson.model.AbstractProject.checkout(AbstractProject.java:1193) at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:565) at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:453) at hudson.model.Run.run(Run.java:1376) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:175)

          cowwoc added a comment -

          I have the same problem (unicode characters and LANG set to UTF8). I can delete these files from a linux shell. Why can't Java delete these files? What can I do to troubleshoot this further and/or fix the problem?

          cowwoc added a comment - I have the same problem (unicode characters and LANG set to UTF8). I can delete these files from a linux shell. Why can't Java delete these files? What can I do to troubleshoot this further and/or fix the problem?

          cowwoc added a comment -

          Ah. It turns out that under OSX 10.7 (which is what I'm using) file.encoding is set to US-ASCII (in spite of encoding being set to UTF-8 in the OS). See http://java.net/jira/browse/MACOSX_PORT-165 for the related bug report.

          NOTE: This does not solve the problem reported by Rafael since he was running under Linux.

          cowwoc added a comment - Ah. It turns out that under OSX 10.7 (which is what I'm using) file.encoding is set to US-ASCII (in spite of encoding being set to UTF-8 in the OS). See http://java.net/jira/browse/MACOSX_PORT-165 for the related bug report. NOTE: This does not solve the problem reported by Rafael since he was running under Linux.

          Kyle Leinen added a comment - - edited

          I am also seeing this problem running from Windows XP. It started happening when I upgraded from 1.471 to 1.480.

          Kyle Leinen added a comment - - edited I am also seeing this problem running from Windows XP. It started happening when I upgraded from 1.471 to 1.480.

          i am having this issue as well i dont have any unicode character on the build name. i am running version 1.491

          daniel anggrianto added a comment - i am having this issue as well i dont have any unicode character on the build name. i am running version 1.491

          Jesse Glick added a comment -

          Seems that java.io.File.listFiles() returns some children on which File.delete does not work. Probably means that some files use bytes in their names which the current mounted filesystem’s name encoding cannot handle. Anyone know how to reproduce this from scratch? It is possible that for Java 7+ java.nio.file.Files.walkFileTree would do a better job of handling these corner cases.

          Jesse Glick added a comment - Seems that java.io.File.listFiles() returns some children on which File.delete does not work. Probably means that some files use bytes in their names which the current mounted filesystem’s name encoding cannot handle. Anyone know how to reproduce this from scratch? It is possible that for Java 7+ java.nio.file.Files.walkFileTree would do a better job of handling these corner cases.

          Daniel Beck added a comment -

          jglick In Jenkins 1.567, the same problem exists, but the stack trace is different.

          Steps to reproduce on OS X:

          1. java -Dfile.encoding=ASCII -jar jenkins-1.567.war
          2. Configure Jenkins to use ${ITEM_ROOTDIR}/workspace as workspace directory on master
          3. Create a freestyle project
          4. Add a shell build step with the following script (that just creates a file named 'ä' in the workspace if your locale allows):
            #!/bin/bash
            echo "0000000: 746f 7563 6820 c3a4 0a" | xxd -r > script.sh
            chmod +x script.sh
            ./script.sh
          5. Run a build: Workspace browser will show a file named 'script.sh' and a file named 'ä'.
          6. Delete the project
          java.io.IOException: java.lang.reflect.InvocationTargetException
          	at hudson.Util.isSymlinkJava7(Util.java:360)
          	at hudson.Util.isSymlink(Util.java:325)
          	at hudson.Util.deleteRecursive(Util.java:291)
          	at hudson.Util.deleteContentsRecursive(Util.java:203)
          	at hudson.Util.deleteRecursive(Util.java:292)
          	at hudson.Util.deleteContentsRecursive(Util.java:203)
          	at hudson.Util.deleteRecursive(Util.java:292)
          	at hudson.model.AbstractItem.performDelete(AbstractItem.java:550)
          	at hudson.model.Job.performDelete(Job.java:254)
          	at hudson.model.AbstractProject.performDelete(AbstractProject.java:370)
          	at hudson.model.AbstractItem.delete(AbstractItem.java:531)
          	at hudson.model.Job.delete(Job.java:627)
          	at hudson.model.AbstractItem.doDoDelete(AbstractItem.java:492)
          	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          	at java.lang.reflect.Method.invoke(Method.java:606)
          	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298)
          	at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:46)
          	at org.kohsuke.stapler.Function$InterceptedFunction.invoke(Function.java:399)
          	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
          	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
          	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
          	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:631)
          	at org.kohsuke.stapler.Stapler.service(Stapler.java:225)
          	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:96)
          	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:74)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
          	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: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(ThreadPoolExecutor.java:1145)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
          	at java.lang.Thread.run(Thread.java:744)
          Caused by: java.lang.reflect.InvocationTargetException
          	at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          	at java.lang.reflect.Method.invoke(Method.java:606)
          	at hudson.Util.isSymlinkJava7(Util.java:355)
          	... 87 more
          Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable chacraters: /Users/danielbeck/.hudson/jobs/a/workspace/ä
          	at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
          	at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)
          	at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281)
          	at java.io.File.toPath(File.java:2186)
          	... 91 more

          Wipe out workspace:

          java.io.IOException: java.lang.reflect.InvocationTargetException
          	at hudson.Util.isSymlinkJava7(Util.java:360)
          	at hudson.Util.isSymlink(Util.java:325)
          	at hudson.Util.deleteRecursive(Util.java:291)
          	at hudson.Util.deleteContentsRecursive(Util.java:203)
          	at hudson.Util.deleteRecursive(Util.java:292)
          	at hudson.FilePath$12.invoke(FilePath.java:1085)
          	at hudson.FilePath$12.invoke(FilePath.java:1082)
          	at hudson.FilePath.act(FilePath.java:920)
          	at hudson.FilePath.act(FilePath.java:893)
          	at hudson.FilePath.deleteRecursive(FilePath.java:1082)
          	at hudson.model.AbstractProject.doDoWipeOutWorkspace(AbstractProject.java:1901)
          	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          	at java.lang.reflect.Method.invoke(Method.java:606)
          	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298)
          	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
          	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
          	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
          	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:631)
          	at org.kohsuke.stapler.Stapler.service(Stapler.java:225)
          	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:96)
          	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:74)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
          	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: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(ThreadPoolExecutor.java:1145)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
          	at java.lang.Thread.run(Thread.java:744)
          Caused by: java.lang.reflect.InvocationTargetException
          	at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          	at java.lang.reflect.Method.invoke(Method.java:606)
          	at hudson.Util.isSymlinkJava7(Util.java:355)
          	... 83 more
          Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable chacraters: /Users/danielbeck/.hudson/jobs/a/workspace/ä
          	at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
          	at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)
          	at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281)
          	at java.io.File.toPath(File.java:2186)
          	... 87 more

          Here's a bonus:

          Create a project named 'ä' and try to delete it:

          java.io.IOException: java.lang.reflect.InvocationTargetException
          	at hudson.Util.isSymlinkJava7(Util.java:360)
          	at hudson.Util.isSymlink(Util.java:325)
          	at hudson.Util.deleteRecursive(Util.java:291)
          	at hudson.model.AbstractItem.performDelete(AbstractItem.java:550)
          	at hudson.model.Job.performDelete(Job.java:254)
          	at hudson.model.AbstractProject.performDelete(AbstractProject.java:370)
          	at hudson.model.AbstractItem.delete(AbstractItem.java:531)
          	at hudson.model.Job.delete(Job.java:627)
          	at hudson.model.AbstractItem.doDoDelete(AbstractItem.java:492)
          	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          	at java.lang.reflect.Method.invoke(Method.java:606)
          	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298)
          	at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:46)
          	at org.kohsuke.stapler.Function$InterceptedFunction.invoke(Function.java:399)
          	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
          	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
          	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
          	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:631)
          	at org.kohsuke.stapler.Stapler.service(Stapler.java:225)
          	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:96)
          	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:74)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
          	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
          	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: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(ThreadPoolExecutor.java:1145)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
          	at java.lang.Thread.run(Thread.java:744)
          Caused by: java.lang.reflect.InvocationTargetException
          	at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source)
          	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          	at java.lang.reflect.Method.invoke(Method.java:606)
          	at hudson.Util.isSymlinkJava7(Util.java:355)
          	... 83 more
          Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable chacraters: /Users/danielbeck/.hudson/jobs/ä
          	at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
          	at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)
          	at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281)
          	at java.io.File.toPath(File.java:2186)
          	... 87 more

          Daniel Beck added a comment - jglick In Jenkins 1.567, the same problem exists, but the stack trace is different. Steps to reproduce on OS X: java -Dfile.encoding=ASCII -jar jenkins-1.567.war Configure Jenkins to use ${ITEM_ROOTDIR}/workspace as workspace directory on master Create a freestyle project Add a shell build step with the following script (that just creates a file named 'ä' in the workspace if your locale allows): #!/bin/bash echo "0000000: 746f 7563 6820 c3a4 0a" | xxd -r > script.sh chmod +x script.sh ./script.sh Run a build: Workspace browser will show a file named 'script.sh' and a file named 'ä'. Delete the project java.io.IOException: java.lang.reflect.InvocationTargetException at hudson.Util.isSymlinkJava7(Util.java:360) at hudson.Util.isSymlink(Util.java:325) at hudson.Util.deleteRecursive(Util.java:291) at hudson.Util.deleteContentsRecursive(Util.java:203) at hudson.Util.deleteRecursive(Util.java:292) at hudson.Util.deleteContentsRecursive(Util.java:203) at hudson.Util.deleteRecursive(Util.java:292) at hudson.model.AbstractItem.performDelete(AbstractItem.java:550) at hudson.model.Job.performDelete(Job.java:254) at hudson.model.AbstractProject.performDelete(AbstractProject.java:370) at hudson.model.AbstractItem.delete(AbstractItem.java:531) at hudson.model.Job.delete(Job.java:627) at hudson.model.AbstractItem.doDoDelete(AbstractItem.java:492) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298) at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:46) at org.kohsuke.stapler.Function$InterceptedFunction.invoke(Function.java:399) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:631) at org.kohsuke.stapler.Stapler.service(Stapler.java:225) 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:96) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:74) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46) 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: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(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang. Thread .run( Thread .java:744) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at hudson.Util.isSymlinkJava7(Util.java:355) ... 87 more Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable chacraters: /Users/danielbeck/.hudson/jobs/a/workspace/ä at sun.nio.fs.UnixPath.encode(UnixPath.java:147) at sun.nio.fs.UnixPath.<init>(UnixPath.java:71) at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281) at java.io.File.toPath(File.java:2186) ... 91 more Wipe out workspace: java.io.IOException: java.lang.reflect.InvocationTargetException at hudson.Util.isSymlinkJava7(Util.java:360) at hudson.Util.isSymlink(Util.java:325) at hudson.Util.deleteRecursive(Util.java:291) at hudson.Util.deleteContentsRecursive(Util.java:203) at hudson.Util.deleteRecursive(Util.java:292) at hudson.FilePath$12.invoke(FilePath.java:1085) at hudson.FilePath$12.invoke(FilePath.java:1082) at hudson.FilePath.act(FilePath.java:920) at hudson.FilePath.act(FilePath.java:893) at hudson.FilePath.deleteRecursive(FilePath.java:1082) at hudson.model.AbstractProject.doDoWipeOutWorkspace(AbstractProject.java:1901) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:631) at org.kohsuke.stapler.Stapler.service(Stapler.java:225) 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:96) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:74) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46) 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: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(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang. Thread .run( Thread .java:744) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at hudson.Util.isSymlinkJava7(Util.java:355) ... 83 more Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable chacraters: /Users/danielbeck/.hudson/jobs/a/workspace/ä at sun.nio.fs.UnixPath.encode(UnixPath.java:147) at sun.nio.fs.UnixPath.<init>(UnixPath.java:71) at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281) at java.io.File.toPath(File.java:2186) ... 87 more Here's a bonus: Create a project named 'ä' and try to delete it: java.io.IOException: java.lang.reflect.InvocationTargetException at hudson.Util.isSymlinkJava7(Util.java:360) at hudson.Util.isSymlink(Util.java:325) at hudson.Util.deleteRecursive(Util.java:291) at hudson.model.AbstractItem.performDelete(AbstractItem.java:550) at hudson.model.Job.performDelete(Job.java:254) at hudson.model.AbstractProject.performDelete(AbstractProject.java:370) at hudson.model.AbstractItem.delete(AbstractItem.java:531) at hudson.model.Job.delete(Job.java:627) at hudson.model.AbstractItem.doDoDelete(AbstractItem.java:492) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298) at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:46) at org.kohsuke.stapler.Function$InterceptedFunction.invoke(Function.java:399) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:631) at org.kohsuke.stapler.Stapler.service(Stapler.java:225) 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:96) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:74) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46) 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: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(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang. Thread .run( Thread .java:744) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at hudson.Util.isSymlinkJava7(Util.java:355) ... 83 more Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable chacraters: /Users/danielbeck/.hudson/jobs/ä at sun.nio.fs.UnixPath.encode(UnixPath.java:147) at sun.nio.fs.UnixPath.<init>(UnixPath.java:71) at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281) at java.io.File.toPath(File.java:2186) ... 87 more

          Jesse Glick added a comment -

          Looks like the four calls to File.toPath should catch InvalidPathException and try to fall back gracefully to some other behavior; and Files.walkFileTree ought to be used where applicable. Not clear whether this would help the users who claim to be using UTF-8 already, or not using non-ASCII characters at all; they may be seeing an unrelated bug. Generally speaking, using java.nio.file methods is preferable because they give meaningful exceptions rather than just returning false when something is wrong.

          Jesse Glick added a comment - Looks like the four calls to File.toPath should catch InvalidPathException and try to fall back gracefully to some other behavior; and Files.walkFileTree ought to be used where applicable. Not clear whether this would help the users who claim to be using UTF-8 already, or not using non-ASCII characters at all; they may be seeing an unrelated bug. Generally speaking, using java.nio.file methods is preferable because they give meaningful exceptions rather than just returning false when something is wrong.

          Daniel Beck added a comment -

          Too bad all comments are so old, more information would be helpful. (e.g. "dont have any unicode character on the build name" can still mean that there's a bad char in the workspace somewhere, and I'm don't know LANG=xx.UTF-8 implies -Dfile.encoding=UTF-8)

          All: If you experience this problem, please provide output from /systemInfo URL, and try to set -Dfile.encoding=UTF-8 on all nodes (master + slaves).

          Daniel Beck added a comment - Too bad all comments are so old, more information would be helpful. (e.g. "dont have any unicode character on the build name" can still mean that there's a bad char in the workspace somewhere, and I'm don't know LANG=xx.UTF-8 implies -Dfile.encoding=UTF-8) All: If you experience this problem, please provide output from /systemInfo URL, and try to set -Dfile.encoding=UTF-8 on all nodes (master + slaves).

          I have the same problem. A unicode character in the filename was causing it. Once i deleted this file manually it worked.

          Johannes Villmow added a comment - I have the same problem. A unicode character in the filename was causing it. Once i deleted this file manually it worked.

          Steve HAmmond added a comment -

          I added Dfile.encoding=UTF-8 in node configuration>Node Properties->Environment Variables using JAVA_TOOL_OPTIONS
          and in the master system configuration->Global Properties->Environment Variables the same.

          Still having the same error.

          System Properties

          Name ↓
          Value
          file.encoding ANSI_X3.4-1968
          file.encoding.pkg sun.io
          file.separator /
          java.awt.graphicsenv sun.awt.X11GraphicsEnvironment
          java.awt.printerjob sun.print.PSPrinterJob
          java.class.path slave.jar
          java.class.version 50.0
          java.endorsed.dirs /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/endorsed
          java.ext.dirs /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/ext:/usr/java/packages/lib/ext
          java.home /home/installs/java-1.6.0/jdk1.6.0_41/jre
          java.io.tmpdir /tmp
          java.library.path /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64/server:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64:/home/installs/java-1.6.0/jdk1.6.0_41/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
          java.runtime.name Java(TM) SE Runtime Environment
          java.runtime.version 1.6.0_41-b02
          java.specification.name Java Platform API Specification
          java.specification.vendor Sun Microsystems Inc.
          java.specification.version 1.6
          java.vendor Sun Microsystems Inc.
          java.vendor.url http://java.sun.com/
          java.vendor.url.bug http://java.sun.com/cgi-bin/bugreport.cgi
          java.version 1.6.0_41
          java.vm.info mixed mode
          java.vm.name Java HotSpot(TM) 64-Bit Server VM
          java.vm.specification.name Java Virtual Machine Specification
          java.vm.specification.vendor Sun Microsystems Inc.
          java.vm.specification.version 1.0
          java.vm.vendor Sun Microsystems Inc.
          java.vm.version 20.14-b01
          line.separator \n
          os.arch amd64
          os.name Linux
          os.version 3.8.13-55.1.2.el6uek.x86_64
          path.separator :
          sun.arch.data.model 64
          sun.boot.class.path /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/resources.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/rt.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/sunrsasign.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/jsse.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/jce.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/charsets.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/modules/jdk.boot.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/classes
          sun.boot.library.path /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64
          sun.cpu.endian little
          sun.cpu.isalist
          sun.io.unicode.encoding UnicodeLittle
          sun.java.command slave.jar
          sun.java.launcher SUN_STANDARD
          sun.jnu.encoding ANSI_X3.4-1968
          sun.management.compiler HotSpot 64-Bit Tiered Compilers
          sun.os.patch.level unknown
          user.country US
          user.dir /home
          user.home /home
          user.language en
          user.name installs
          user.timezone Universal
          Environment Variables

          Name ↓
          Value
          _ /home/installs/java-1.6.0/jdk1.6.0_41/bin/java
          HOME /home
          LD_LIBRARY_PATH /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64/server:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64:/home/installs/java-1.6.0/jdk1.6.0_41/jre/../lib/amd64
          LOGNAME installs
          MAIL /var/mail/installs
          NLSPATH /usr/dt/lib/nls/msg/%L/%N.cat
          OLDPWD /home/installs
          PATH /usr/local/bin:/bin:/usr/bin
          PWD /home/installs
          SELINUX_LEVEL_REQUESTED
          SELINUX_ROLE_REQUESTED
          SELINUX_USE_CURRENT_RANGE
          SHELL /bin/sh
          SHLVL 1
          SSH_CLIENT 10.241.4.166 52269 22
          SSH_CONNECTION 10.241.4.166 52269 10.241.4.179 22
          USER installs
          XFILESEARCHPATH /usr/dt/app-defaults/%L/Dt
          Thread Dump

          Channel reader thread: channel

          "Channel reader thread: channel" Id=9 Group=main RUNNABLE (in native)
          at java.io.FileInputStream.readBytes(Native Method)
          at java.io.FileInputStream.read(FileInputStream.java:220)
          at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
          at java.io.BufferedInputStream.read(BufferedInputStream.java:237)

          • locked java.io.BufferedInputStream@1ef3215
            at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2252)
            at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2545)
            at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2555)
            at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1294)
            at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
            at hudson.remoting.Channel$ReaderThread.run(Channel.java:1017)

          main

          "main" Id=1 Group=main WAITING on hudson.remoting.Channel@39d85f79
          at java.lang.Object.wait(Native Method)

          • waiting on hudson.remoting.Channel@39d85f79
            at java.lang.Object.wait(Object.java:485)
            at hudson.remoting.Channel.join(Channel.java:795)
            at hudson.remoting.Launcher.main(Launcher.java:412)
            at hudson.remoting.Launcher.runWithStdinStdout(Launcher.java:358)
            at hudson.remoting.Launcher.run(Launcher.java:198)
            at hudson.remoting.Launcher.main(Launcher.java:160)

          Ping thread for channel hudson.remoting.Channel@39d85f79:channel

          "Ping thread for channel hudson.remoting.Channel@39d85f79:channel" Id=10 Group=main TIMED_WAITING
          at java.lang.Thread.sleep(Native Method)
          at hudson.remoting.PingThread.run(PingThread.java:79)

          Pipe writer thread: channel

          "Pipe writer thread: channel" Id=12 Group=main WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@10cb09c8
          at sun.misc.Unsafe.park(Native Method)

          • waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@10cb09c8
            at java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
            at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987)
            at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:399)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:957)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917)
            at java.lang.Thread.run(Thread.java:662)

          pool-1-thread-15

          "pool-1-thread-15" Id=1131 Group=main WAITING on java.lang.UNIXProcess@5ac31778
          at java.lang.Object.wait(Native Method)

          • waiting on java.lang.UNIXProcess@5ac31778
            at java.lang.Object.wait(Object.java:485)
            at java.lang.UNIXProcess.waitFor(UNIXProcess.java:165)
            at hudson.Proc$LocalProc.join(Proc.java:222)
            at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:828)
            at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:797)
            at hudson.remoting.UserRequest.perform(UserRequest.java:107)
            at hudson.remoting.UserRequest.perform(UserRequest.java:41)
            at hudson.remoting.Request$2.run(Request.java:276)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
            at java.lang.Thread.run(Thread.java:662)

          Number of locked synchronizers = 1

          • java.util.concurrent.locks.ReentrantLock$NonfairSync@3818a815

          pool-1-thread-25

          "pool-1-thread-25" Id=1931 Group=main RUNNABLE
          at sun.management.ThreadImpl.dumpThreads0(Native Method)
          at sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:433)
          at hudson.Functions.getThreadInfos(Functions.java:891)
          at hudson.util.RemotingDiagnostics$GetThreadDump.call(RemotingDiagnostics.java:83)
          at hudson.util.RemotingDiagnostics$GetThreadDump.call(RemotingDiagnostics.java:78)
          at hudson.remoting.UserRequest.perform(UserRequest.java:107)
          at hudson.remoting.UserRequest.perform(UserRequest.java:41)
          at hudson.remoting.Request$2.run(Request.java:276)
          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
          at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
          at java.util.concurrent.FutureTask.run(FutureTask.java:138)
          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
          at java.lang.Thread.run(Thread.java:662)

          Number of locked synchronizers = 1

          • java.util.concurrent.locks.ReentrantLock$NonfairSync@217fa749

          pool-1-thread-27

          "pool-1-thread-27" Id=2292 Group=main TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7839e749
          at sun.misc.Unsafe.park(Native Method)

          • waiting on java.util.concurrent.SynchronousQueue$TransferStack@7839e749
            at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
            at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424)
            at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
            at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917)
            at java.lang.Thread.run(Thread.java:662)

          pool-1-thread-28

          "pool-1-thread-28" Id=2466 Group=main TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7839e749
          at sun.misc.Unsafe.park(Native Method)

          • waiting on java.util.concurrent.SynchronousQueue$TransferStack@7839e749
            at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
            at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424)
            at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
            at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917)
            at java.lang.Thread.run(Thread.java:662)

          pool-1-thread-29

          "pool-1-thread-29" Id=2467 Group=main TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7839e749
          at sun.misc.Unsafe.park(Native Method)

          • waiting on java.util.concurrent.SynchronousQueue$TransferStack@7839e749
            at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
            at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424)
            at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
            at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874)
            at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917)
            at java.lang.Thread.run(Thread.java:662)

          pool-1-thread-7

          "pool-1-thread-7" Id=18 Group=main WAITING on java.lang.UNIXProcess@66ac6adc
          at java.lang.Object.wait(Native Method)

          • waiting on java.lang.UNIXProcess@66ac6adc
            at java.lang.Object.wait(Object.java:485)
            at java.lang.UNIXProcess.waitFor(UNIXProcess.java:165)
            at hudson.Proc$LocalProc.join(Proc.java:222)
            at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:828)
            at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:797)
            at hudson.remoting.UserRequest.perform(UserRequest.java:107)
            at hudson.remoting.UserRequest.perform(UserRequest.java:41)
            at hudson.remoting.Request$2.run(Request.java:276)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
            at java.lang.Thread.run(Thread.java:662)

          Number of locked synchronizers = 1

          • java.util.concurrent.locks.ReentrantLock$NonfairSync@2be579ff

          process reaper

          "process reaper" Id=109 Group=main RUNNABLE (in native)
          at java.lang.UNIXProcess.waitForProcessExit(Native Method)
          at java.lang.UNIXProcess.access$900(UNIXProcess.java:20)
          at java.lang.UNIXProcess$1$1.run(UNIXProcess.java:132)

          Finalizer

          "Finalizer" Id=3 Group=system WAITING on java.lang.ref.ReferenceQueue$Lock@7ec101b0
          at java.lang.Object.wait(Native Method)

          • waiting on java.lang.ref.ReferenceQueue$Lock@7ec101b0
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
            at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
            at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

          Reference Handler

          "Reference Handler" Id=2 Group=system WAITING on java.lang.ref.Reference$Lock@31560ad3
          at java.lang.Object.wait(Native Method)

          • waiting on java.lang.ref.Reference$Lock@31560ad3
            at java.lang.Object.wait(Object.java:485)
            at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)

          Signal Dispatcher

          "Signal Dispatcher" Id=4 Group=system RUNNABLE

          Steve HAmmond added a comment - I added Dfile.encoding=UTF-8 in node configuration >Node Properties->Environment Variables using JAVA_TOOL_OPTIONS and in the master system configuration->Global Properties->Environment Variables the same. Still having the same error. System Properties Name ↓ Value file.encoding ANSI_X3.4-1968 file.encoding.pkg sun.io file.separator / java.awt.graphicsenv sun.awt.X11GraphicsEnvironment java.awt.printerjob sun.print.PSPrinterJob java.class.path slave.jar java.class.version 50.0 java.endorsed.dirs /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/endorsed java.ext.dirs /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/ext:/usr/java/packages/lib/ext java.home /home/installs/java-1.6.0/jdk1.6.0_41/jre java.io.tmpdir /tmp java.library.path /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64/server:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64:/home/installs/java-1.6.0/jdk1.6.0_41/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib java.runtime.name Java(TM) SE Runtime Environment java.runtime.version 1.6.0_41-b02 java.specification.name Java Platform API Specification java.specification.vendor Sun Microsystems Inc. java.specification.version 1.6 java.vendor Sun Microsystems Inc. java.vendor.url http://java.sun.com/ java.vendor.url.bug http://java.sun.com/cgi-bin/bugreport.cgi java.version 1.6.0_41 java.vm.info mixed mode java.vm.name Java HotSpot(TM) 64-Bit Server VM java.vm.specification.name Java Virtual Machine Specification java.vm.specification.vendor Sun Microsystems Inc. java.vm.specification.version 1.0 java.vm.vendor Sun Microsystems Inc. java.vm.version 20.14-b01 line.separator \n os.arch amd64 os.name Linux os.version 3.8.13-55.1.2.el6uek.x86_64 path.separator : sun.arch.data.model 64 sun.boot.class.path /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/resources.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/rt.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/sunrsasign.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/jsse.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/jce.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/charsets.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/modules/jdk.boot.jar:/home/installs/java-1.6.0/jdk1.6.0_41/jre/classes sun.boot.library.path /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64 sun.cpu.endian little sun.cpu.isalist sun.io.unicode.encoding UnicodeLittle sun.java.command slave.jar sun.java.launcher SUN_STANDARD sun.jnu.encoding ANSI_X3.4-1968 sun.management.compiler HotSpot 64-Bit Tiered Compilers sun.os.patch.level unknown user.country US user.dir /home user.home /home user.language en user.name installs user.timezone Universal Environment Variables Name ↓ Value _ /home/installs/java-1.6.0/jdk1.6.0_41/bin/java HOME /home LD_LIBRARY_PATH /home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64/server:/home/installs/java-1.6.0/jdk1.6.0_41/jre/lib/amd64:/home/installs/java-1.6.0/jdk1.6.0_41/jre/../lib/amd64 LOGNAME installs MAIL /var/mail/installs NLSPATH /usr/dt/lib/nls/msg/%L/%N.cat OLDPWD /home/installs PATH /usr/local/bin:/bin:/usr/bin PWD /home/installs SELINUX_LEVEL_REQUESTED SELINUX_ROLE_REQUESTED SELINUX_USE_CURRENT_RANGE SHELL /bin/sh SHLVL 1 SSH_CLIENT 10.241.4.166 52269 22 SSH_CONNECTION 10.241.4.166 52269 10.241.4.179 22 USER installs XFILESEARCHPATH /usr/dt/app-defaults/%L/Dt Thread Dump Channel reader thread: channel "Channel reader thread: channel" Id=9 Group=main RUNNABLE (in native) at java.io.FileInputStream.readBytes(Native Method) at java.io.FileInputStream.read(FileInputStream.java:220) at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) at java.io.BufferedInputStream.read(BufferedInputStream.java:237) locked java.io.BufferedInputStream@1ef3215 at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2252) at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2545) at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2555) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1294) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348) at hudson.remoting.Channel$ReaderThread.run(Channel.java:1017) main "main" Id=1 Group=main WAITING on hudson.remoting.Channel@39d85f79 at java.lang.Object.wait(Native Method) waiting on hudson.remoting.Channel@39d85f79 at java.lang.Object.wait(Object.java:485) at hudson.remoting.Channel.join(Channel.java:795) at hudson.remoting.Launcher.main(Launcher.java:412) at hudson.remoting.Launcher.runWithStdinStdout(Launcher.java:358) at hudson.remoting.Launcher.run(Launcher.java:198) at hudson.remoting.Launcher.main(Launcher.java:160) Ping thread for channel hudson.remoting.Channel@39d85f79:channel "Ping thread for channel hudson.remoting.Channel@39d85f79:channel" Id=10 Group=main TIMED_WAITING at java.lang.Thread.sleep(Native Method) at hudson.remoting.PingThread.run(PingThread.java:79) Pipe writer thread: channel "Pipe writer thread: channel" Id=12 Group=main WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@10cb09c8 at sun.misc.Unsafe.park(Native Method) waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@10cb09c8 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:156) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987) at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:399) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:957) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917) at java.lang.Thread.run(Thread.java:662) pool-1-thread-15 "pool-1-thread-15" Id=1131 Group=main WAITING on java.lang.UNIXProcess@5ac31778 at java.lang.Object.wait(Native Method) waiting on java.lang.UNIXProcess@5ac31778 at java.lang.Object.wait(Object.java:485) at java.lang.UNIXProcess.waitFor(UNIXProcess.java:165) at hudson.Proc$LocalProc.join(Proc.java:222) at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:828) at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:797) at hudson.remoting.UserRequest.perform(UserRequest.java:107) at hudson.remoting.UserRequest.perform(UserRequest.java:41) at hudson.remoting.Request$2.run(Request.java:276) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:662) Number of locked synchronizers = 1 java.util.concurrent.locks.ReentrantLock$NonfairSync@3818a815 pool-1-thread-25 "pool-1-thread-25" Id=1931 Group=main RUNNABLE at sun.management.ThreadImpl.dumpThreads0(Native Method) at sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:433) at hudson.Functions.getThreadInfos(Functions.java:891) at hudson.util.RemotingDiagnostics$GetThreadDump.call(RemotingDiagnostics.java:83) at hudson.util.RemotingDiagnostics$GetThreadDump.call(RemotingDiagnostics.java:78) at hudson.remoting.UserRequest.perform(UserRequest.java:107) at hudson.remoting.UserRequest.perform(UserRequest.java:41) at hudson.remoting.Request$2.run(Request.java:276) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:662) Number of locked synchronizers = 1 java.util.concurrent.locks.ReentrantLock$NonfairSync@217fa749 pool-1-thread-27 "pool-1-thread-27" Id=2292 Group=main TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7839e749 at sun.misc.Unsafe.park(Native Method) waiting on java.util.concurrent.SynchronousQueue$TransferStack@7839e749 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196) at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424) at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323) at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917) at java.lang.Thread.run(Thread.java:662) pool-1-thread-28 "pool-1-thread-28" Id=2466 Group=main TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7839e749 at sun.misc.Unsafe.park(Native Method) waiting on java.util.concurrent.SynchronousQueue$TransferStack@7839e749 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196) at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424) at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323) at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917) at java.lang.Thread.run(Thread.java:662) pool-1-thread-29 "pool-1-thread-29" Id=2467 Group=main TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7839e749 at sun.misc.Unsafe.park(Native Method) waiting on java.util.concurrent.SynchronousQueue$TransferStack@7839e749 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196) at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424) at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323) at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:874) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917) at java.lang.Thread.run(Thread.java:662) pool-1-thread-7 "pool-1-thread-7" Id=18 Group=main WAITING on java.lang.UNIXProcess@66ac6adc at java.lang.Object.wait(Native Method) waiting on java.lang.UNIXProcess@66ac6adc at java.lang.Object.wait(Object.java:485) at java.lang.UNIXProcess.waitFor(UNIXProcess.java:165) at hudson.Proc$LocalProc.join(Proc.java:222) at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:828) at hudson.Launcher$RemoteLaunchCallable.call(Launcher.java:797) at hudson.remoting.UserRequest.perform(UserRequest.java:107) at hudson.remoting.UserRequest.perform(UserRequest.java:41) at hudson.remoting.Request$2.run(Request.java:276) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:662) Number of locked synchronizers = 1 java.util.concurrent.locks.ReentrantLock$NonfairSync@2be579ff process reaper "process reaper" Id=109 Group=main RUNNABLE (in native) at java.lang.UNIXProcess.waitForProcessExit(Native Method) at java.lang.UNIXProcess.access$900(UNIXProcess.java:20) at java.lang.UNIXProcess$1$1.run(UNIXProcess.java:132) Finalizer "Finalizer" Id=3 Group=system WAITING on java.lang.ref.ReferenceQueue$Lock@7ec101b0 at java.lang.Object.wait(Native Method) waiting on java.lang.ref.ReferenceQueue$Lock@7ec101b0 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159) Reference Handler "Reference Handler" Id=2 Group=system WAITING on java.lang.ref.Reference$Lock@31560ad3 at java.lang.Object.wait(Native Method) waiting on java.lang.ref.Reference$Lock@31560ad3 at java.lang.Object.wait(Object.java:485) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) Signal Dispatcher "Signal Dispatcher" Id=4 Group=system RUNNABLE

          Daniel Beck added a comment -

          I added Dfile.encoding=UTF-8 in node configuration>Node Properties->Environment Variables using JAVA_TOOL_OPTIONS
          and in the master system configuration->Global Properties->Environment Variables the same.

          Those are the environment variables passed to your builds, not to Jenkins itself and the slave processes, so this won't work. Change it where Jenkins (and/or slaves) are actually launched.

          Daniel Beck added a comment - I added Dfile.encoding=UTF-8 in node configuration>Node Properties->Environment Variables using JAVA_TOOL_OPTIONS and in the master system configuration->Global Properties->Environment Variables the same. Those are the environment variables passed to your builds, not to Jenkins itself and the slave processes, so this won't work. Change it where Jenkins (and/or slaves) are actually launched.

          dan tran added a comment - - edited

          Encounter same issue

          Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /space/jenkins/xxxx/workspace/xxx-ui/node_modules/grunt-contrib-compress/node_modules/archiver/node_modules/file-utils/node_modules/isbinaryfile/tests/fixtures/03_��������������������������������������������������.rst
          at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
          at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)

          My jenkins STS 1.609 is on linux SLES12 x64 Java 8

          Where the file name a Russian file name

          dan tran added a comment - - edited Encounter same issue Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /space/jenkins/xxxx/workspace/xxx-ui/node_modules/grunt-contrib-compress/node_modules/archiver/node_modules/file-utils/node_modules/isbinaryfile/tests/fixtures/03_���������������������� ���� ������������������������.rst at sun.nio.fs.UnixPath.encode(UnixPath.java:147) at sun.nio.fs.UnixPath.<init>(UnixPath.java:71) My jenkins STS 1.609 is on linux SLES12 x64 Java 8 Where the file name a Russian file name

          dan tran added a comment -

          @Daniel Beck could you be more specific, the closest I can guest is the same place node->configuration>node properties->environment.

          dan tran added a comment - @Daniel Beck could you be more specific, the closest I can guest is the same place node- >configuration >node properties ->environment.

          Croesus Kall added a comment -

          dantran I think he means the environment variable set to the jenkins process itself.

          If you are using for example an rpm based version of jenkins, you can set this in the file:

          /etc/sysconfig/jenkins

          and add the UTF-8 setting to the variable JENKINS_JAVA_OPTIONS

          Croesus Kall added a comment - dantran I think he means the environment variable set to the jenkins process itself. If you are using for example an rpm based version of jenkins, you can set this in the file: /etc/sysconfig/jenkins and add the UTF-8 setting to the variable JENKINS_JAVA_OPTIONS

          dan tran added a comment -

          More clarification.

          1. Our Master on is on SLES11.3 with UTF-8 encoding setup correctly. I can see it from jenkins system info

          2. Connect to SLES12 slave via ssh to a user account that uses csh as login shell ( i cant change it to bash). For some reason, this slave does not have LANG configured and therefor the slave system info show file.encoding=ANSI_X3.4-1968. This causes our build log shows 'funny' chars when encounter none ascii

          3. To fix this, I ended up to set up LANG=en_US.UTF-8 env, the slave JVM's file.encoding=UTF-8 at the slave node configuration. This solves the log display issue

          However, I am not able to remove my job workspace which has none English chars in filenames.

          dan tran added a comment - More clarification. 1. Our Master on is on SLES11.3 with UTF-8 encoding setup correctly. I can see it from jenkins system info 2. Connect to SLES12 slave via ssh to a user account that uses csh as login shell ( i cant change it to bash). For some reason, this slave does not have LANG configured and therefor the slave system info show file.encoding=ANSI_X3.4-1968. This causes our build log shows 'funny' chars when encounter none ascii 3. To fix this, I ended up to set up LANG=en_US.UTF-8 env, the slave JVM's file.encoding=UTF-8 at the slave node configuration. This solves the log display issue However, I am not able to remove my job workspace which has none English chars in filenames.

          Jesse Glick added a comment -

          Jenkins now requires Java 7 so there is no reason not to switch to the newer, probably more reliable APIs.

          Jesse Glick added a comment - Jenkins now requires Java 7 so there is no reason not to switch to the newer, probably more reliable APIs.

          Daniel Beck added a comment -

          jglick The existing implementation of Util.deleteFile(File) already uses Files.delete(Path) if available, or what are you referring to?

          Daniel Beck added a comment - jglick The existing implementation of Util.deleteFile(File) already uses Files.delete(Path) if available, or what are you referring to?

          Jesse Glick added a comment -

          danielbeck no it only uses the Java 7+ methods as a fallback to gather diagnostics. Since we now require Java 7, the whole method should be rewritten to use java.nio.file from the start.

          Jesse Glick added a comment - danielbeck no it only uses the Java 7+ methods as a fallback to gather diagnostics. Since we now require Java 7, the whole method should be rewritten to use java.nio.file from the start.

          R. Tyler Croy added a comment -

          I suspect this might be fixed now that Jenkins requires Java 8. Assigning to myself to do some testing.

          R. Tyler Croy added a comment - I suspect this might be fixed now that Jenkins requires Java 8. Assigning to myself to do some testing.

          Jesse Glick added a comment -

          I doubt that merely requiring Java 8 (actually here, 7) fixes anything. We would need to actually rewrite a bunch of code to use java.nio.file. Which is not done, and already tracked in several other issues which I could look up if you are interested.

          Jesse Glick added a comment - I doubt that merely requiring Java 8 (actually here, 7) fixes anything. We would need to actually rewrite a bunch of code to use java.nio.file . Which is not done, and already tracked in several other issues which I could look up if you are interested.

          R. Tyler Croy added a comment -

          With the latest LTS, I was not able to strictly use danielbeck's reproduction steps above. Instead I needed to execute Jenkins with LANG=C in the environment. -Dfile.encoding=ASCII was irrelevant to whether or not the workspace could be properly cleaned out.

          I would be surprised if this was still affecting modern systems though, unless they have very dumb defaults set (i.e. LANG=C).

          R. Tyler Croy added a comment - With the latest LTS, I was not able to strictly use danielbeck 's reproduction steps above. Instead I needed to execute Jenkins with LANG=C in the environment. -Dfile.encoding=ASCII was irrelevant to whether or not the workspace could be properly cleaned out. I would be surprised if this was still affecting modern systems though, unless they have very dumb defaults set (i.e. LANG=C).

          Daniel Beck added a comment -

          rtyler RHEL 6 had a very weird default LANG, at least when logged in via SSH, back when I used it, but I guess it doesn't qualify as modern for you?

          Daniel Beck added a comment - rtyler RHEL 6 had a very weird default LANG, at least when logged in via SSH, back when I used it, but I guess it doesn't qualify as modern for you?

          R. Tyler Croy added a comment -

          Depends on which 6.x you're referring to, RHEL6 spans 6 years.

          But generally yes, I don't consider RHEL modern at all

          R. Tyler Croy added a comment - Depends on which 6.x you're referring to, RHEL6 spans 6 years. But generally yes, I don't consider RHEL modern at all

          Jesse Glick added a comment -

          FTR dnusbaum has recently been working on related core patches.

          Jesse Glick added a comment - FTR dnusbaum has recently been working on related core patches.

          Devin Nusbaum added a comment -

          Yes, I am in the process of moving Util.tryOnceDeleteRecursive and the methods it uses to NIO as part of JENKINS-36088. I don't know if it will fix this issue but it might improve the error messages.

          Devin Nusbaum added a comment - Yes, I am in the process of moving Util.tryOnceDeleteRecursive and the methods it uses to NIO as part of JENKINS-36088 . I don't know if it will fix this issue but it might improve the error messages.

          Devin Nusbaum added a comment - - edited

          I was able to reproduce the issue on 2.94-SNAPSHOT (With PR #3169 which uses NIO for deletion) with danielbeck's instructions after adding -Dsun.jnu.encoding=ASCII when starting Jenkins.

          java -Dsun.jnu.encoding=ASCII -Dfile.encoding=ASCII -jar jenkins.war
          
          java.lang.reflect.InvocationTargetException
          	at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:347)
          	at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:52)
          	at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
          	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:184)
          	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:117)
          	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:129)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)
          	at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:248)
          	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
          	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)
          	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)
          	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:790)
          	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:841)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1650)
          	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
          	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:138)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
          	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:85)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
          	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:90)
          	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
          	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
          	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
          	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
          	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
          	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
          	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
          	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
          	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
          	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
          	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
          	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
          	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253)
          	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
          	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
          	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
          	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
          	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
          	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
          	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
          	at org.eclipse.jetty.server.Server.handle(Server.java:564)
          	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:317)
          	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
          	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
          	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
          	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
          	at org.eclipse.jetty.util.thread.Invocable.invokePreferred(Invocable.java:128)
          	at org.eclipse.jetty.util.thread.Invocable$InvocableExecutor.invoke(Invocable.java:222)
          	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:294)
          	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:199)
          	at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
          	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
          	at java.lang.Thread.run(Thread.java:748)
          Caused by: java.io.IOException: Unable to delete '/Users/dnusbaum/.jenkins/jobs/filename-testing'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts.
          	at hudson.Util.deleteRecursive(Util.java:338)
          	at hudson.model.AbstractItem.performDelete(AbstractItem.java:674)
          	at hudson.model.AbstractProject.performDelete(AbstractProject.java:362)
          	at hudson.model.AbstractItem.delete(AbstractItem.java:658)
          	at hudson.model.Job.delete(Job.java:681)
          	at hudson.model.AbstractItem.doDoDelete(AbstractItem.java:528)
          	at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
          	at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:343)
          	... 76 more
          Caused by: java.io.IOException: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /Users/dnusbaum/.jenkins/jobs/filename-testing/workspace/?
          	at hudson.Util.isSymlink(Util.java:510)
          	at hudson.Util.tryOnceDeleteRecursive(Util.java:354)
          	at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:375)
          	at hudson.Util.tryOnceDeleteRecursive(Util.java:355)
          	at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:375)
          	at hudson.Util.tryOnceDeleteRecursive(Util.java:355)
          	at hudson.Util.deleteRecursive(Util.java:333)
          	... 83 more
          Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /Users/dnusbaum/.jenkins/jobs/filename-testing/workspace/?
          	at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
          	at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)
          	at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281)
          	at java.io.File.toPath(File.java:2234)
          	at hudson.Util.isSymlink(Util.java:496)
          	... 89 more
          

          Relevant settings from /SystemInfo:

          file.encoding=ASCII
          sun.jnu.encoding=ASCII
          LANG=en_US.UTF-8
          

          The description of http://bugs.java.com/view_bug.do?bug_id=8003228 mentions:

          sun.jnu.encoding is the encoding used for encoding/decoding file paths...

          So maybe that is the magic parameter that needs to be set for people who already have UTF8 file.encoding and LANG?

          Devin Nusbaum added a comment - - edited I was able to reproduce the issue on 2.94-SNAPSHOT (With PR #3169  which uses NIO for deletion) with danielbeck 's instructions after adding -Dsun.jnu.encoding=ASCII when starting Jenkins. java -Dsun.jnu.encoding=ASCII -Dfile.encoding=ASCII -jar jenkins.war java.lang.reflect.InvocationTargetException at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:347) at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:52) at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:184) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:117) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:129) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845) at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:248) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845) 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:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:841) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1650) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:138) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:85) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:90) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637) at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) at org.eclipse.jetty.server.Server.handle(Server.java:564) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:317) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110) at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124) at org.eclipse.jetty.util.thread.Invocable.invokePreferred(Invocable.java:128) at org.eclipse.jetty.util.thread.Invocable$InvocableExecutor.invoke(Invocable.java:222) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:294) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:199) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.io.IOException: Unable to delete '/Users/dnusbaum/.jenkins/jobs/filename-testing'. Tried 3 times (of a maximum of 3) waiting 0.1 sec between attempts. at hudson.Util.deleteRecursive(Util.java:338) at hudson.model.AbstractItem.performDelete(AbstractItem.java:674) at hudson.model.AbstractProject.performDelete(AbstractProject.java:362) at hudson.model.AbstractItem.delete(AbstractItem.java:658) at hudson.model.Job.delete(Job.java:681) at hudson.model.AbstractItem.doDoDelete(AbstractItem.java:528) at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627) at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:343) ... 76 more Caused by: java.io.IOException: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /Users/dnusbaum/.jenkins/jobs/filename-testing/workspace/? at hudson.Util.isSymlink(Util.java:510) at hudson.Util.tryOnceDeleteRecursive(Util.java:354) at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:375) at hudson.Util.tryOnceDeleteRecursive(Util.java:355) at hudson.Util.tryOnceDeleteContentsRecursive(Util.java:375) at hudson.Util.tryOnceDeleteRecursive(Util.java:355) at hudson.Util.deleteRecursive(Util.java:333) ... 83 more Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /Users/dnusbaum/.jenkins/jobs/filename-testing/workspace/? at sun.nio.fs.UnixPath.encode(UnixPath.java:147) at sun.nio.fs.UnixPath.<init>(UnixPath.java:71) at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281) at java.io.File.toPath(File.java:2234) at hudson.Util.isSymlink(Util.java:496) ... 89 more Relevant settings from /SystemInfo: file.encoding=ASCII sun.jnu.encoding=ASCII LANG=en_US.UTF-8 The description of http://bugs.java.com/view_bug.do?bug_id=8003228 mentions: sun.jnu.encoding is the encoding used for encoding/decoding file paths... So maybe that is the magic parameter that needs to be set for people who already have UTF8 file.encoding and LANG?

          Daniel Beck added a comment -

          Time for another admin monitor?

          Daniel Beck added a comment - Time for another admin monitor?

          Devin Nusbaum added a comment -

          danielbeck You mean an admin monitor that activates if the master or any of the build agents have some, but not all, of LANG, file.encoding, and sun.jnu.encoding set to some UTF-8 variant? I guess it could just warn if anything is not UTF-8, as long as the monitor can be dismissed.

          Devin Nusbaum added a comment - danielbeck You mean an admin monitor that activates if the master or any of the build agents have some, but not all, of LANG , file.encoding , and sun.jnu.encoding set to some UTF-8 variant? I guess it could just warn if anything is not UTF-8, as long as the monitor can be dismissed.

          Daniel Beck added a comment -

          Every monitor can be dismissed. They typically implement a button to do so, otherwise there's a section in the global config to enable/disable monitors (separate from them being active/inactive, which enabled monitors can be if their condition is matched).

          Daniel Beck added a comment - Every monitor can be dismissed. They typically implement a button to do so, otherwise there's a section in the global config to enable/disable monitors (separate from them being active/inactive, which enabled monitors can be if their condition is matched).

          Hello! Does anyone know of any workaround?

          Valeriy Pastushenko added a comment - Hello! Does anyone know of any workaround?

            Unassigned Unassigned
            dextervip Rafael Tavares
            Votes:
            20 Vote for this issue
            Watchers:
            24 Start watching this issue

              Created:
              Updated: