[jboss-svn-commits] JBL Code SVN: r31027 - labs/jbossrules/branches/true_modify_20100104/drools-core/src/main/java/org/drools/reteoo.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Jan 11 21:57:01 EST 2010


Author: tirelli
Date: 2010-01-11 21:57:01 -0500 (Mon, 11 Jan 2010)
New Revision: 31027

Modified:
   labs/jbossrules/branches/true_modify_20100104/drools-core/src/main/java/org/drools/reteoo/CollectNode.java
Log:
JBRULES-2340: fixing handle leak in collect when retracting left tuple

Modified: labs/jbossrules/branches/true_modify_20100104/drools-core/src/main/java/org/drools/reteoo/CollectNode.java
===================================================================
--- labs/jbossrules/branches/true_modify_20100104/drools-core/src/main/java/org/drools/reteoo/CollectNode.java	2010-01-12 02:27:42 UTC (rev 31026)
+++ labs/jbossrules/branches/true_modify_20100104/drools-core/src/main/java/org/drools/reteoo/CollectNode.java	2010-01-12 02:57:01 UTC (rev 31027)
@@ -216,6 +216,10 @@
             this.sink.propagateRetractLeftTupleDestroyRightTuple( leftTuple,
                                                                   context,
                                                                   workingMemory );
+        } else {
+            // if not propagated, just destroy the result fact handle
+            workingMemory.getFactHandleFactory().destroyFactHandle( colctx.resultTuple.getFactHandle() );
+            
         }
     }
 
@@ -382,7 +386,12 @@
         }
 
         this.constraints.resetTuple( memory.betaMemory.getContext() );
-
+        evaluateResultConstraints( ActivitySource.LEFT,
+                                   leftTuple,
+                                   context,
+                                   workingMemory,
+                                   memory,
+                                   colctx );
     }
 
     public void modifyRightTuple(RightTuple rightTuple,



More information about the jboss-svn-commits mailing list