You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Sanjeeb Sahoo (JIRA)" <ji...@codehaus.org> on 2008/02/29 04:17:28 UTC

[jira] Reopened: (MNG-3419) Build continues despite OutOfMemoryError

     [ http://jira.codehaus.org/browse/MNG-3419?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sanjeeb Sahoo reopened MNG-3419:
--------------------------------


I am sorry, I don't see how sun hk2 plugin can catch an OutofMemorryError and wrap it in a suitable exception. To the best of my knowledge, we don't catch any Throwable and mask it. So, it must the Maven plugin framework which is at fault here.

> Build continues despite OutOfMemoryError
> ----------------------------------------
>
>                 Key: MNG-3419
>                 URL: http://jira.codehaus.org/browse/MNG-3419
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Plugins and Lifecycle
>    Affects Versions: 2.0.7
>            Reporter: Sanjeeb Sahoo
>             Fix For: 2.0.9
>
>
> [I have already sent this question to users forum twice, but no response, so I am filing this issue]
> I am seeing something very strange. We have our own plugin(it's basically an annotation processor) that gets invoked as part of compile phase. It appears that the JVM gets OutOfMemoryError when this plugin is executed, yet the build continues to the next phase instead of aborting. I ran with -X option and it shows that the plugin is invoked in process. I have looked at our plugin code and we do not catch Throwable or Error in our code. So, it appears to be a bug in Maven. Given below is some selected output that I think should give an idea of what's going on...
> [INFO] ----------------------------------------------------------------------------
> [INFO] Building Web Container for GlassFish
> [INFO]    task-segment: [install]
> [INFO] ----------------------------------------------------------------------------
> [INFO] [resources:resources]
> [INFO] Using default encoding to copy filtered resources.
> ...
> [DEBUG] Configuring mojo 'com.sun.enterprise:hk2-maven-plugin:0.2-SNAPSHOT:hk2-compile' -->
> ...
> [DEBUG]   (f) fork = false
> ...
> [INFO] [hk2:hk2-compile]
> [DEBUG] Using compiler 'hk2-apt'.
> [DEBUG] Source directories: [/space/ss141213/WS/gf/v3/web/webtier/src/main/java]
> [DEBUG] Classpath: [/space/ss141213/WS/gf/v3/web/webtier/target/classes...
> [INFO] Compiling 660 source files to /space/ss141213/WS/gf/v3/web/webtier/target/classes
> The system is out of resources.
> Consult the following stack trace for details.
> java.lang.OutOfMemoryError: Java heap space
>        at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:99)
>        at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:393)
>        at java.lang.StringBuilder.append(StringBuilder.java:120)
>        at com.sun.tools.javac.jvm.ClassReader.list(ClassReader.java:1756)
>        at com.sun.tools.javac.jvm.ClassReader.listAll(ClassReader.java:1882)
>        at com.sun.tools.javac.jvm.ClassReader.fillIn(ClassReader.java:1901)
>        at com.sun.tools.javac.jvm.ClassReader.complete(ClassReader.java:1538)
>        at com.sun.tools.javac.code.Symbol.complete(Symbol.java:355)
>        at com.sun.tools.javac.jvm.ClassReader.completeOwners(ClassReader.java:1547)
>        at com.sun.tools.javac.jvm.ClassReader.complete(ClassReader.java:1534)
>        at com.sun.tools.javac.code.Symbol.complete(Symbol.java:355)
>        at com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:612)
>        at com.sun.tools.javac.code.Symbol$ClassSymbol.flags(Symbol.java:550)
>        at com.sun.tools.javac.code.Types$AsSuperFcn.visitClassType(Types.java:1440)
>        at com.sun.tools.javac.code.Type$ClassType.accept(Type.java:482)
>        at com.sun.tools.javac.code.Types$AsSuperFcn.asSuper(Types.java:1417)
>        at com.sun.tools.javac.code.Types$AsSuperFcn.visitClassType(Types.java:1434)
>        at com.sun.tools.javac.code.Type$ClassType.accept(Type.java:482)
>        at com.sun.tools.javac.code.Types$AsSuperFcn.asSuper(Types.java:1417)
>        at com.sun.tools.javac.code.Types.asSuper(Types.java:1407)
>        at com.sun.tools.javac.code.Types$IsSubTypeFcn.visitClassType(Types.java:429)
>        at com.sun.tools.javac.code.Type$ClassType.accept(Type.java:482)
>        at com.sun.tools.javac.code.Types$IsSubTypeFcn.isSubType(Types.java:353)
>        at com.sun.tools.javac.code.Types.isSubType(Types.java:331)
>        at com.sun.tools.javac.code.Types.isSubTypeUnchecked(Types.java:311)
>        at com.sun.tools.javac.code.Types.isConvertible(Types.java:278)
>        at com.sun.tools.javac.code.Types.isAssignable(Types.java:1630)
>        at com.sun.tools.javac.comp.Check.checkType(Check.java:325)
>        at com.sun.tools.javac.comp.Annotate.enterAnnotation(Annotate.java:122)
>        at com.sun.tools.javac.comp.MemberEnter.enterAnnotations(MemberEnter.java:705)
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: Some input files use unchecked or unsafe operations.
> Note: Recompile with -Xlint:unchecked for details.
> [INFO] [resources:testResources]
> [INFO] Using default encoding to copy filtered resources.
> ...
> Thanks,
> Sahoo 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira