<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Times New Roman; font-size: 12pt; color: #000000'>I've taken the rule on nabble (for strange reasons, it does not display correctly on mails ...).<br>Wolfgang was right :<br><br>rule "C020 - Gate charge (Out M)-B"<br>&nbsp;&nbsp; &nbsp;salience 45<br>&nbsp;&nbsp; &nbsp;no-loop true<br>when<br>&nbsp;&nbsp; <span style="color: rgb(255, 0, 0); font-weight: bold;">&nbsp;ChargeDetailEntity( opsDate_currentLeg &gt;= "20110101 000000" )</span> &nbsp;and<br>&nbsp;&nbsp; &nbsp;$charge :<span style="color: rgb(255, 0, 0); font-weight: bold;"> ChargeDetailEntity</span>( $tariffType : tariffType, $tariffCode : tariffCode, $chargeEtd : etd, billToCompany == "C020", chargeType == "YH", cntrStatus1 == "XM" ) &nbsp; and<br>&nbsp;&nbsp; &nbsp;not( <br>&nbsp;&nbsp; &nbsp;exists( <br>&nbsp;&nbsp; &nbsp;$seq : ChargeDetailRefSeqEntity( $seqEtd : etd, (invSepCriteriaName == "C020 - Gate charge (Out M)") &amp;&amp; ((adjType == $charge.adjType) &amp;&amp; ((bargeJobId == $charge.bargeJobId) &amp;&amp; ((billToCompany == $charge.billToCompany) &amp;&amp; ((chargeType == $charge.chargeType) &amp;&amp; ((consortiumCode == $charge.consortiumCode) &amp;&amp; ((serviceCode == $charge.serviceCode) &amp;&amp; ((vesselCode == $charge.vesselCode) &amp;&amp; ((voyageCode == $charge.voyageCode) &amp;&amp; (etd == $chargeEtd))))))))) ) &nbsp; ) &nbsp;) &nbsp; <br>then<br>&nbsp;&nbsp; &nbsp;insert(createChargeDetailRefSeqEntity("C020 - Gate charge (Out M)", $charge, newSeqList));<br>&nbsp;&nbsp; &nbsp;retract($charge);<br>end<br><br><br>the first &nbsp; &nbsp; ChargeDetailEntity( opsDate_currentLeg &gt;= "20110101 000000" ) &nbsp;is the problem.<br>Don't know why there is 2 ChargeDetailEntity patterns, but I would put the contraint in the other ChargeDetailEntity pattern.<br>This way, adding one ChargeDetailEntity object will only lead one rule activation. With the rule as this, the number of activiation you show in your log is normal ...<br><br>PS : using a exists inside a not is redundant. not means "not exists" by itself. not( exists (X) ) is the same as not( X ).<br><br><hr id="zwchr"><br>De: "Wolfgang Laun" &lt;wolfgang.laun@gmail.com&gt;<br>À: "Rules Users List" &lt;rules-users@lists.jboss.org&gt;<br>Envoyé: Vendredi 18 Mai 2012 13:02:09<br>Objet: Re: [rules-users] Object activiates same rule many times<br><br>Please show the rule.<br><br>Exponentially growing activations can be caused by rules where the<br>same fact type is used more than once. You'll have to use constraints<br>inhibiting useless duplications, e.g.,<br><br>when<br>&nbsp;&nbsp; $a1: A()<br>&nbsp;&nbsp; $a2: A(this != $a1 )<br>then<br><br>-W<br><br><br><br>On 18/05/2012, Christina Lau &lt;lau.christina@hit.com.hk&gt; wrote:<br><blockquote> Hi all,<br><br>&nbsp;I find an odd pattern in the audit log. When an Object is inserted to the<br>&nbsp;working memory, activation is created many times on same rule. The more<br>&nbsp;objects are inserted, the duplicated activations are growing exponentially<br>&nbsp;which degrade the performance a lot.<br><br>&nbsp;Here attached part of the audit log:<br><br>&nbsp;http://drools.46999.n3.nabble.com/file/n4000630/rule-DOCSEP-1337325521971.log<br>&nbsp;rule-DOCSEP-1337325521971.log<br><br>&nbsp;In the log,<br>&nbsp;- when object (130) is inserted, rule "C020 - Gate charge (Out M)-B" is<br>&nbsp;activiated 129 times.<br>&nbsp;- when object (131) is inserted, rule "C020 - Gate charge (Out M)-B" is<br>&nbsp;activiated 130 times.<br><br>&nbsp;Here is the rule of "C020 - Gate charge (Out M)-B",<br><br><br><br>&nbsp;The "insert" in RHS only add ChargeDetailRefSeqEntity to working memory<br>&nbsp;that<br>&nbsp;I don't think it causes the recursive activation.<br><br>&nbsp;And I'd already set no-loop to true. Does anyone offer some help here?<br><br><br>&nbsp;Thank you very much,<br>&nbsp;Christina<br><br><br>&nbsp;--<br>&nbsp;View this message in context:<br>&nbsp;http://drools.46999.n3.nabble.com/Object-activiates-same-rule-many-times-tp4000630.html<br>&nbsp;Sent from the Drools: User forum mailing list archive at Nabble.com.<br>&nbsp;_______________________________________________<br>&nbsp;rules-users mailing list<br>&nbsp;rules-users@lists.jboss.org<br>&nbsp;https://lists.jboss.org/mailman/listinfo/rules-users<br><br>_______________________________________________</blockquote><br>rules-users mailing list<br>rules-users@lists.jboss.org<br>https://lists.jboss.org/mailman/listinfo/rules-users<br></div></body></html>