[lworld] ForwardingFileManager always closes its delegate leading to ClosedFileSystemException in TestOriginatingElements

XMLWordPrintable

      After the enabling of the jimage implementation and cleanup of close methods the testOriginatingElements test fails with ClosedFileSystemException.

      Failed locally and in CI.
      `
      Exception running test testOriginatingElements: java.lang.RuntimeException: java.nio.file.ClosedFileSystemException
      java.lang.RuntimeException: java.nio.file.ClosedFileSystemException
      at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.invocationHelper(JavacTaskImpl.java:168)
      at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)
      at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)
      at TestOriginatingElements.testOriginatingElements(TestOriginatingElements.java:193)
              ...
      Caused by: java.nio.file.ClosedFileSystemException
      at java.base/jdk.internal.jrtfs.JrtFileSystem.ensureOpen(JrtFileSystem.java:423)
      at java.base/jdk.internal.jrtfs.JrtFileSystem.checkNode(JrtFileSystem.java:499)
      at java.base/jdk.internal.jrtfs.JrtFileSystem.getFileAttributes(JrtFileSystem.java:227)
      at java.base/jdk.internal.jrtfs.JrtPath.getAttributes(JrtPath.java:652)
      at java.base/jdk.internal.jrtfs.JrtFileSystemProvider.readAttributes(JrtFileSystemProvider.java:355)
      at java.base/java.nio.file.Files.readAttributes(Files.java:1706)
      at jdk.compiler/com.sun.tools.javac.file.JavacFileManager.getContainer(JavacFileManager.java:321)
      at jdk.compiler/com.sun.tools.javac.file.JavacFileManager.getFileForInput(JavacFileManager.java:872)
      at jdk.compiler/com.sun.tools.javac.file.JavacFileManager.getJavaFileForInput(JavacFileManager.java:846)
      at java.compiler@26-jep401ea2/javax.tools.ForwardingJavaFileManager.getJavaFileForInput(ForwardingJavaFileManager.java:129)
      at jdk.compiler/com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager.getJavaFileForInput(ClientCodeWrapper.java:278)
      at jdk.compiler/com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation(ModuleFinder.java:286)
      at jdk.compiler/com.sun.tools.javac.code.ModuleFinder.findModuleInfo(ModuleFinder.java:364)
      at jdk.compiler/com.sun.tools.javac.code.ModuleFinder.findAllModules(ModuleFinder.java:192)
      at jdk.compiler/com.sun.tools.javac.comp.Modules.getUnnamedModuleCompleter(Modules.java:1460)
      at jdk.compiler/com.sun.tools.javac.comp.Modules.setCompilationUnitModules(Modules.java:529)
      at jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:273)
      at jdk.compiler/com.sun.tools.javac.comp.Modules.initModules(Modules.java:232)
      at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.initModules(JavaCompiler.java:1061)
      at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:955)
      at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:104)
      at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.invocationHelper(JavacTaskImpl.java:152)
      `

            Assignee:
            David Beaumont
            Reporter:
            Roger Riggs
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: