Sure, I already did that a couple of times. The more important and complex
part actually resides in the release:prepare goal.

Release:perform is basically just a svn checkout from the freshly created
tag (during the prepare) followed by a mvn deploy run from the checkouted
directory.

Cheers.

2009/6/8 Ryan Moquin <[email protected]>

> Ok, if I do just a mvn:deploy with 1024MB of memory, it fails at the same
> spot with what I think is the same stack trace:
>
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] FATAL ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Java heap space
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Trace
> java.lang.OutOfMemoryError: Java heap space
>         at java.util.Arrays.copyOf(Arrays.java:2786)
>         at
> java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:94)
>         at
> sun.net.www.http.PosterOutputStream.write(PosterOutputStream.java:61)
>         at
> org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:492)
>         at
> org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:457)
>         at
> org.apache.maven.wagon.AbstractWagon.putTransfer(AbstractWagon.java:411)
>         at
> org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:392)
>         at
> org.apache.maven.wagon.AbstractWagon.putTransfer(AbstractWagon.java:365)
>         at org.apache.maven.wagon.StreamWagon.put(StreamWagon.java:160)
>         at
>
> org.apache.maven.artifact.manager.DefaultWagonManager.putRemoteFile(DefaultWagonManager.java:262)
>         at
>
> org.apache.maven.artifact.manager.DefaultWagonManager.putArtifact(DefaultWagonManager.java:172)
>         at
>
> org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploy(DefaultArtifactDeployer.java:107)
>         at
> org.apache.maven.plugin.deploy.DeployMojo.execute(DeployMojo.java:190)
>         at
>
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
>         at
>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
>         at
>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:540)
>         at
>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:519)
>         at
>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371
> )
>         at
>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
>         at
>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
>         at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
>         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
>         at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at
> org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
>         at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
>         at
> org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
>         at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 28 minutes 3 seconds
> [INFO] Finished at: Mon Jun 08 16:10:21 EDT 2009
> [INFO] Final Memory: 459M/992M
> [INFO]
> ------------------------------------------------------------------------
>
> If I use 1284 with either goal (release:perform or deploy), my project
> fails
> a lot sooner with an OOME at growableArray.cpp (at that point the heap is
> only at 500MB) .. which makes no sense since with deploy only one JVM is
> running at 1284 and fails, but with release:perform using 1024, there are
> two JVMs running with 1024MB of memory.. so something has to be wrong with
> the JVM with that much memory.
>
> Once again, once the checkout is done in target, can I just do a mvn deploy
> on the individuals modules to effectively finish the release:perform?  It's
> the only way I'm going to be able to finish my release.
>
> Thanks,
> Ryan
>
> On Mon, Jun 8, 2009 at 11:51 AM, Ryan Moquin <[email protected]>
> wrote:
>
> > It looks like it does fork since if I use jconsole, I will get a second
> JVM
> > that has identical properties as the first.  Part of the issue with this
> is
> > I notice that both JVMs will have the amount of memory I specify for
> > MAVEN_OPTS.  In the above case, 1GB.  If I run release:perform, the
> forked
> > JVM is maxed at 1 GB of memory when the error occurs.
> >
> > I did try to run the JVM with 1284 MB for the maven instance (which is
> the
> > highest I can run it where the JVM will start), but in that case, my
> build
> > dies sooner because it can't allocate enough memory for the forked
> > instance.  The initial instance of Maven2 only uses 40K of memory, so
> it's
> > unnecessary for it to have as much memory as the spawned process.  The
> > server I'm building on, has 4GB of physical memory, but apparently enough
> > isn't available to have the initial Maven2 instance and the spawned one
> both
> > running at 1284MB of memory.
> >
> > Other than checking out the tag, is the only other thing that the
> > release:perform does is a "deploy"?
> >
> > Ryan
> >
> >
> > On Mon, Jun 8, 2009 at 10:35 AM, Baptiste MATHUS <[email protected]> wrote:
> >
> >> Interesting. The artifact you're trying to deploy is 350MB+ large.
> >> Could you please try and just "mvn deploy" your project?
> >>
> >> I don't remember is the release plugin forks or not.
> >>
> >> My 2 cents,
> >> Cheers
> >>
> >> 2009/6/8 Ryan Moquin <[email protected]>
> >>
> >> > I'm trying to figure out why maven 2.1 is running out of heap space
> when
> >> I
> >> > do a release:perform on my project.  The project builds fine until I
> do
> >> a
> >> > release:perform in which case it runs out of memory.  The stack trace
> >> seems
> >> > to indicate that there was enough memory.  Do I need to give more
> memory
> >> to
> >> > the release plugin?  Here is the stacktrace, it seems like there is a
> >> > spawned JVM at the time of the error which doesn't have enough memory:
> >> >
> >> > [INFO] 262144/351338K
> >> > [INFO] 262148/351338K
> >> > [INFO] [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO] [ERROR] FATAL ERROR
> >> > [INFO] [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO] [INFO] Java heap space
> >> > [INFO] [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO] [INFO] Trace
> >> > [INFO] java.lang.OutOfMemoryError: Java heap space
> >> > [INFO]  at java.util.Arrays.copyOf(Arrays.java:2786)
> >> > [INFO]  at
> >> > java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:94)
> >> > [INFO]  at
> >> > sun.net.www.http.PosterOutputStream.write(PosterOutputStream.java:61)
> >> > [INFO]  at
> >> > org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:492)
> >> > [INFO]  at
> >> > org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:457)
> >> > [INFO]  at
> >> >
> org.apache.maven.wagon.AbstractWagon.putTransfer(AbstractWagon.java:411)
> >> > [INFO]  at
> >> > org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:392)
> >> > [INFO]  at
> >> >
> org.apache.maven.wagon.AbstractWagon.putTransfer(AbstractWagon.java:365)
> >> > [INFO]  at
> org.apache.maven.wagon.StreamWagon.put(StreamWagon.java:160)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.artifact.manager.DefaultWagonManager.putRemoteFile(DefaultWagonManager.java:262)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.artifact.manager.DefaultWagonManager.putArtifact(DefaultWagonManager.java:172)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploy(DefaultArtifactDeployer.java:107)
> >> > [INFO]  at
> >> > org.apache.maven.plugin.deploy.DeployMojo.execute(DeployMojo.java:190)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:540)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:519)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371
> >> > )
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
> >> > [INFO]  at
> >> >
> >> >
> >>
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
> >> > [INFO]  at
> >> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
> >> > [INFO]  at
> org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
> >> > [INFO]  at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
> >> > [INFO]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >> > [INFO]  at
> >> >
> >> >
> >>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >> > [INFO]  at
> >> >
> >> >
> >>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >> > [INFO]  at java.lang.reflect.Method.invoke(Method.java:597)
> >> > [INFO]  at
> >> > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> >> > [INFO]  at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> >> > [INFO]  at
> >> > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> >> > [INFO]  at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> >> > [INFO] [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO] [INFO] Total time: 30 minutes 19 seconds
> >> > [INFO] [INFO] Finished at: Sat Jun 06 02:19:04 EDT 2009
> >> > [INFO] [INFO] Final Memory: 473M/1016M
> >> > [INFO] [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [ERROR] BUILD ERROR
> >> > [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO] Maven execution failed, exit code: '1'
> >> >
> >> > [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO] For more information, run Maven with the -e switch
> >> > [INFO]
> >> >
> ------------------------------------------------------------------------
> >> > [INFO] Total time: 33 minutes 32 seconds
> >> > [INFO] Finished at: Sat Jun 06 02:19:21 EDT 2009
> >> > [INFO] Final Memory: 36M/65M
> >> > [INFO]
> >> >
> ------------------------------------------------------------------------
> >> >
> >> > Thanks,
> >> > Ryan
> >> >
> >>
> >>
> >>
> >> --
> >> Baptiste <Batmat> MATHUS - http://batmat.net
> >> Sauvez un arbre,
> >> Mangez un castor !
> >>
> >
> >
>



-- 
Baptiste <Batmat> MATHUS - http://batmat.net
Sauvez un arbre,
Mangez un castor !

Reply via email to