Hi All, @Scott The WARN does not change anything to the result. And to reduce the memory usage I already closed everything (Eclipse, MySQL service, Tomcat, ...) and ran the compilation as a command line. Naively I made a deep cleanup of my hard drive (defrag, optimization) in order to allow a higher memory allocation. But it doesn't change anything to my problem.
@Chris I'll try and will come back soon with the results @Jeff I agree with you, this is certainly the problem. May be I should try to debug the compiler... Thanks for your advices :-) Yves On 11 nov, 04:04, Jeff Larsen <larse...@gmail.com> wrote: > If I was a guessing man, I'd say you're gettting into an infinite loop > with generics here and the SerializableTypeOracleBuilder. > > ResultNode<T extends ResultNode<?>> The ? is probably what is causing > this to break. > > I'm the serializer, I'm making a serialization policy for ResultNode<T > extends ResultNode<?> since a valid value for ? is ResultNode it will > continue to make serialization plolcity for an infinite number of > ResultNodes > > ResultNode<T exends ResultNode<ResultNode<T extends > ResultNode<ResultNode<T extends ResultNode<..........>>>>........... > until the jvm runs out of heap. But that is just a guess without > actually writing anything to test it, but it is a solid guess since > SerializableTypeOracleBuilder is where the stack trace is blowing up. > > On Nov 10, 6:19 pm, Chris Conroy <con...@google.com> wrote: > > > Actually, to get a more accurate picture than just looking at JConsole > > graphs, you could add -verbose:gc to the jvm flags and report back > > with the before and after logs that produces. > > > On Wed, Nov 10, 2010 at 2:26 PM, Chris Conroy <con...@google.com> wrote: > > > Yves, > > > > You say this error did not occur before your most recent change. It > > > would be useful to get an idea for the memory usage before this > > > change: it could be that your app is just very large and you were > > > already on the edge of an OOME, your change really necessitates more > > > memory, or this is a pathological case. > > > > Here are a few things to try for gathering more useful information: > > > > -Try attaching jconsole to the compile in the before and after > > > scenario and see how the memory usage compares between both. > > > > -add -XX:-HeapDumpOnOutOfMemoryError to the JVM args for your failing > > > compile. There may be some interesting data in the resulting dump. If > > > you can share the heap dump with us (you can send me a link off list > > > if you like), then I can take a look. > > > > -Of course, make sure you are using the latest version of the GWT > > > compiler. The 2.1 compiler contains some changes that will reduce the > > > memory footprint of your compile. > > > > On Wed, Nov 10, 2010 at 1:20 PM, Scott Blum <sco...@google.com> wrote: > > >> Hmmm.... what happens if you turn down the log level, say to "WARN"? > > >> Are you invoking from the command line, or are you using the Google > > >> Plugin > > >> for Eclipse? > > > >> On Wed, Nov 10, 2010 at 4:16 PM, yves <yves.ko...@gmail.com> wrote: > > > >>> Scott, > > >>> Thx for the tip. Anyway I can't allocate more than -Xmx1590M and I get > > >>> exactly the same error. > > >>> Yves > > > >>> On 9 nov, 07:47, Scott Blum <sco...@google.com> wrote: > > >>> > Hmm.... can you increase your virtual memory? > > > >>> > On Mon, Nov 8, 2010 at 5:13 PM, yves <yves.ko...@gmail.com> wrote: > > >>> > > I can't, I only have 2GB RAM, I get this error as from -Xmx1024M > > >>> > > [java] Error occurred during initialization of VM > > >>> > > [java] Could not reserve enough space for object heap > > >>> > > [java] Could not create the Java virtual machine. > > > >>> > > and the log level is INFO > > >>> > > Yves > > > >>> > > On 8 nov, 22:53, Scott Blum <sco...@google.com> wrote: > > >>> > > > What if you turn the heap up to -Xmx2048M? > > > >>> > > > What log level are you using? > > > >>> > > > On Mon, Nov 8, 2010 at 4:44 PM, yves <yves.ko...@gmail.com> wrote: > > >>> > > > > Hi, > > > >>> > > > > I had a class named "ResultNode" and the project compiled fine. > > >>> > > > > In order to improve the code, I changed this class by adding > > >>> > > > > generic > > >>> > > > > stuff like that : ResultNode<T extends ResultNode<?>>. > > >>> > > > > Of course I adapted the entire project where needed to take > > >>> > > > > advantage > > >>> > > > > of this change. > > > >>> > > > > Now I get an "Internal compiler error" > > > >>> > > > > This is produced with java memory settings "-Xmx768M" and > > >>> > > > > "-Xss32M" . > > >>> > > > > (usually the settings are -Xmx128M and default value for -Xss > > >>> > > > > and > > >>> > > > > I > > >>> > > > > never had such problem). > > > >>> > > > > BTW : a "javac" compilation on the project is succesfull, so it > > >>> > > > > is > > >>> > > > > not > > >>> > > > > a java error. > > > >>> > > > > Any suggestion ? If more information is needed do not hesitate > > >>> > > > > to > > >>> > > > > ask. > > >>> > > > > Thanks in advance > > >>> > > > > Yves > > > >>> > > > > [java] Compiling module com.mycompany.myproject.MyProject > > >>> > > > > [java] [ERROR] Errors in > > >>> > > > > 'file:/C:/java/workspace/MyProject/ > > >>> > > > > src/com/mycompany/myproject/client/model/AppActivityMapper.java' > > >>> > > > > [java] [ERROR] Internal compiler error > > >>> > > > > [java] java.lang.OutOfMemoryError: Java heap space > > >>> > > > > [java] at java.util.Arrays.copyOf(Arrays.java:2882) > > >>> > > > > [java] at > > > >>> > > java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java: > > >>> > > > > 100) > > >>> > > > > [java] at > > > >>> > > > > java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:390) > > >>> > > > > [java] at > > >>> > > java.lang.StringBuilder.append(StringBuilder.java:119) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.dev.util.log.PrintWriterTreeLogger.doBranch(PrintWriterTreeLogger.java: > > >>> > > > > 59) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.dev.util.log.AbstractTreeLogger.branch(AbstractTreeLogger.java: > > >>> > > > > 126) > > >>> > > > > [java] at > > >>> > > > > com.google.gwt.core.ext.TreeLogger.branch(TreeLogger.java:222) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > >>> > > > > 939) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkTypeArgument(SerializableTypeOracleBuilder.java: > > >>> > > > > 1412) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtype(SerializableTypeOracleBuilder.java: > > >>> > > > > 1219) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtypes(SerializableTypeOracleBuilder.java: > > >>> > > > > 1309) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > >>> > > > > 1011) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkArrayInstantiable(SerializableTypeOracleBuilder.java: > > >>> > > > > 1107) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > >>> > > > > 977) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkTypeArgument(SerializableTypeOracleBuilder.java: > > >>> > > > > 1412) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtype(SerializableTypeOracleBuilder.java: > > >>> > > > > 1219) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtypes(SerializableTypeOracleBuilder.java: > > >>> > > > > 1309) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > >>> > > > > 1011) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkArrayInstantiable(SerializableTypeOracleBuilder.java: > > >>> > > > > 1107) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > >>> > > > > 977) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkTypeArgument(SerializableTypeOracleBuilder.java: > > >>> > > > > 1412) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtype(SerializableTypeOracleBuilder.java: > > >>> > > > > 1219) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtypes(SerializableTypeOracleBuilder.java: > > >>> > > > > 1309) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > >>> > > > > 1011) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkArrayInstantiable(SerializableTypeOracleBuilder.java: > > >>> > > > > 1107) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > >>> > > > > 977) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkTypeArgument(SerializableTypeOracleBuilder.java: > > >>> > > > > 1412) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtype(SerializableTypeOracleBuilder.java: > > >>> > > > > 1219) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.checkSubtypes(SerializableTypeOracleBuilder.java: > > >>> > > > > 1309) > > >>> > > > > [java] at > > > >>> > > com.google.gwt.user.rebind.rpc.SerializableTypeOracleBuilder.computeTypeInstantiability(SerializableTypeOracleBuilder.java: > > ... > > plus de détails » -- http://groups.google.com/group/Google-Web-Toolkit-Contributors