Folks, We have a large GWT application with 161 compilation permutations (7 user agent permutations * 23 languages). The compiler requires 2.5GB of memory to run and compilations have recently started to fail (non- deterministically) with the following errors (full stack traces at the end of this message):
[INFO] java.lang.NullPointerException [INFO] at com.google.gwt.resources.rebind.context.InlineResourceContext.deploy(InlineResourceContext.java: 40) [INFO] javax.imageio.IIOException: Can't create output stream! [INFO] at javax.imageio.ImageIO.write(ImageIO.java:1560) [INFO] at com.google.gwt.resources.rg.ImageBundleBuilder.createImageBytes(ImageBundleBuilder.java: 558) Is there any way that we can reduce the memory footprint of the compiler? How can we prevent the above compilation errors from occuring? Thanks, -Jason Terk --- [INFO] java.lang.NullPointerException [INFO] at com.google.gwt.resources.rebind.context.InlineResourceContext.deploy(InlineResourceContext.java: 40) [INFO] at com.google.gwt.resources.rebind.context.AbstractResourceContext.deploy(AbstractResourceContext.java: 78) [INFO] at com.google.gwt.resources.rg.ImageResourceGenerator $ExternalImage.render(ImageResourceGenerator.java:310) [INFO] at com.google.gwt.resources.rg.ImageResourceGenerator.renderImageMap(ImageResourceGenerator.java: 662) [INFO] at com.google.gwt.resources.rg.ImageResourceGenerator.createFields(ImageResourceGenerator.java: 504) [INFO] at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.createFieldsAndAssignments(AbstractClientBundleGenerator.java: 773) [INFO] at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.createFieldsAndAssignments(AbstractClientBundleGenerator.java: 854) [INFO] at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.generateIncrementally(AbstractClientBundleGenerator.java: 460) [INFO] at com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java: 647) [INFO] at com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java: 41) [INFO] at com.google.gwt.dev.shell.StandardRebindOracle $Rebinder.rebind(StandardRebindOracle.java:78) [INFO] at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java: 268) [INFO] at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java: 257) [INFO] at com.google.gwt.dev.DistillerRebindPermutationOracle.getAllPossibleRebindAnswers(DistillerRebindPermutationOracle.java: 91) [INFO] at com.google.gwt.dev.jdt.WebModeCompilerFrontEnd.doFindAdditionalTypesUsingRebinds(WebModeCompilerFrontEnd.java: 96) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.process(AbstractCompiler.java:254) [INFO] at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:444) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.compile(AbstractCompiler.java:173) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.compile(AbstractCompiler.java:288) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.access$400(AbstractCompiler.java:139) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler.compile(AbstractCompiler.java: 588) [INFO] at com.google.gwt.dev.jdt.BasicWebModeCompiler.getCompilationUnitDeclarations(BasicWebModeCompiler.java: 97) [INFO] at com.google.gwt.dev.jdt.WebModeCompilerFrontEnd.getCompilationUnitDeclarations(WebModeCompilerFrontEnd.java: 52) [INFO] at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.precompile(JavaToJavaScriptCompiler.java: 569) [INFO] at com.google.gwt.dev.jjs.JavaScriptCompiler.precompile(JavaScriptCompiler.java: 33) [INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java: 284) [INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java: 233) [INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java: 145) [INFO] at com.google.gwt.dev.Compiler.run(Compiler.java:232) [INFO] at com.google.gwt.dev.Compiler.run(Compiler.java:198) [INFO] at com.google.gwt.dev.Compiler$1.run(Compiler.java:170) [INFO] at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:88) [INFO] at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java: 82) [INFO] at com.google.gwt.dev.Compiler.main(Compiler.java:177) --- [INFO] javax.imageio.IIOException: Can't create output stream! [INFO] at javax.imageio.ImageIO.write(ImageIO.java:1560) [INFO] at com.google.gwt.resources.rg.ImageBundleBuilder.createImageBytes(ImageBundleBuilder.java: 558) [INFO] at com.google.gwt.resources.rg.ImageBundleBuilder.toPng(ImageBundleBuilder.java: 544) [INFO] at com.google.gwt.resources.rg.ImageResourceGenerator.reencodeToTempFile(ImageResourceGenerator.java: 641) [INFO] at com.google.gwt.resources.rg.ImageResourceGenerator.prepare(ImageResourceGenerator.java: 567) [INFO] at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.initAndPrepare(AbstractClientBundleGenerator.java: 1043) [INFO] at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.initAndPrepare(AbstractClientBundleGenerator.java: 1069) [INFO] at com.google.gwt.resources.rebind.context.AbstractClientBundleGenerator.generateIncrementally(AbstractClientBundleGenerator.java: 412) [INFO] at com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java: 647) [INFO] at com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java: 41) [INFO] at com.google.gwt.dev.shell.StandardRebindOracle $Rebinder.rebind(StandardRebindOracle.java:78) [INFO] at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java: 268) [INFO] at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java: 257) [INFO] at com.google.gwt.dev.DistillerRebindPermutationOracle.getAllPossibleRebindAnswers(DistillerRebindPermutationOracle.java: 91) [INFO] at com.google.gwt.dev.jdt.WebModeCompilerFrontEnd.doFindAdditionalTypesUsingRebinds(WebModeCompilerFrontEnd.java: 96) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.process(AbstractCompiler.java:254) [INFO] at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:444) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.compile(AbstractCompiler.java:173) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.compile(AbstractCompiler.java:288) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler$Sandbox $CompilerImpl.access$400(AbstractCompiler.java:139) [INFO] at com.google.gwt.dev.jdt.AbstractCompiler.compile(AbstractCompiler.java: 588) [INFO] at com.google.gwt.dev.jdt.BasicWebModeCompiler.getCompilationUnitDeclarations(BasicWebModeCompiler.java: 97) [INFO] at com.google.gwt.dev.jdt.WebModeCompilerFrontEnd.getCompilationUnitDeclarations(WebModeCompilerFrontEnd.java: 52) [INFO] at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.precompile(JavaToJavaScriptCompiler.java: 569) [INFO] at com.google.gwt.dev.jjs.JavaScriptCompiler.precompile(JavaScriptCompiler.java: 33) [INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java: 284) [INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java: 233) [INFO] at com.google.gwt.dev.Precompile.precompile(Precompile.java: 145) [INFO] at com.google.gwt.dev.Compiler.run(Compiler.java:232) [INFO] at com.google.gwt.dev.Compiler.run(Compiler.java:198) [INFO] at com.google.gwt.dev.Compiler$1.run(Compiler.java:170) [INFO] at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:88) [INFO] at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java: 82) [INFO] at com.google.gwt.dev.Compiler.main(Compiler.java:177) [INFO] Caused by: javax.imageio.IIOException: Can't create cache file! [INFO] at javax.imageio.ImageIO.createImageOutputStream(ImageIO.java: 397) [INFO] at javax.imageio.ImageIO.write(ImageIO.java:1558) [INFO] ... 33 more [INFO] Caused by: java.io.IOException: Too many open files [INFO] at java.io.UnixFileSystem.createFileExclusively(Native Method) [INFO] at java.io.File.checkAndCreate(File.java:1704) [INFO] at java.io.File.createTempFile(File.java:1792) [INFO] at javax.imageio.stream.FileCacheImageOutputStream.<init>(FileCacheImageOutputStream.java: 71) [INFO] at com.sun.imageio.spi.OutputStreamImageOutputStreamSpi.createOutputStreamInstance(OutputStreamImageOutputStreamSpi.java: 50) [INFO] at javax.imageio.ImageIO.createImageOutputStream(ImageIO.java: 393) [INFO] ... 34 more -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
