You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2008/08/29 00:38:05 UTC

svn commit: r690031 - in /maven/components/branches/maven-2.1.x: ./ maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java

Author: jdcasey
Date: Thu Aug 28 15:38:04 2008
New Revision: 690031

URL: http://svn.apache.org/viewvc?rev=690031&view=rev
Log:
Merging to r689990 from RC branch.

Modified:
    maven/components/branches/maven-2.1.x/   (props changed)
    maven/components/branches/maven-2.1.x/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
    maven/components/branches/maven-2.1.x/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java   (props changed)

Propchange: maven/components/branches/maven-2.1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Aug 28 15:38:04 2008
@@ -1,3 +1,3 @@
 /maven/components/branches/maven-2.0.10-RC:679193-679867,680477-688882
 /maven/components/branches/maven-2.0.x:679552-679867
-/maven/components/branches/maven-2.1.0-RC:688883,689695
+/maven/components/branches/maven-2.1.0-RC:688883,689695,689990

Modified: maven/components/branches/maven-2.1.x/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.1.x/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java?rev=690031&r1=690030&r2=690031&view=diff
==============================================================================
--- maven/components/branches/maven-2.1.x/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java (original)
+++ maven/components/branches/maven-2.1.x/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java Thu Aug 28 15:38:04 2008
@@ -703,30 +703,20 @@
             {
                 throw new LifecycleExecutionException( e.getMessage(), e );
             }
-            
-            if ( hasFork )
-            {
-                project.setExecutionProject( null );
-                
-                if ( usesReactorProjects )
-                {
-                    List reactorProjects = session.getSortedProjects();
-                    for ( Iterator it = reactorProjects.iterator(); it.hasNext(); )
-                    {
-                        MavenProject reactorProject = (MavenProject) it.next();
-                        reactorProject.setExecutionProject( null );
-                    }
-                }
-            }
-            
-//            if ( usesReactorProjects )
-//            {
-//                restoreAllDynamicStates( session );
-//            }
-//            else
-//            {
-//                restoreDynamicState( project, session, true );
-//            }
+
+            // NOTE: Ordinarily, we might be tempted to set all pertinent executionProjects
+            // to null here, to release some memory. HOWEVER, the problem is that
+            // the reactorProjects construct doesn't track successive levels of
+            // forked execution properly, so we MUST NOT SET THE executionProject
+            // INSTANCES TO NULL. If we do this inside a two-or-more-level-deep
+            // fork, it can result in passing a null project instance through
+            // to the plugin manager, since successive iterations of the n-1
+            // fork to execute fork n with each project in reactorProjects MUST
+            // HAVE ACCESS TO THE executionProject for every project.
+            //
+            // Just please don't set executionProjects == null here. Not until
+            // we have a mechanism for tracking (stack push/pull) successive
+            // forked lifecycles in the reactorProjects collection.
         }
     }
     

Propchange: maven/components/branches/maven-2.1.x/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Aug 28 15:38:04 2008
@@ -1 +1 @@
-/maven/components/branches/maven-2.1.0-RC/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java:688883,689695
+/maven/components/branches/maven-2.1.0-RC/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java:688883,689695,689990