Do you mean that insert ("send") Y times A inserts Y times Aevent with the very same id?!

If so, you will have to reconsider your approach because you are creating the worst possible scenario for the Rete algorithm, i.e., O(n^3) cartesian tuples for your activations.

There are strategies for countering this. A full(er) description of other requirements (if any) for this A-B-C rule would be necessary for doling out good advice.

-W
 

2010/11/15 Roess. Oliver <o.roess@seeburger.de>

Hello again.

 

Thanks for your test Wolfgang. When I do it like you did, I get approx. the same results. But you misunderstood my scenario. I don’t want to send ABC x times. Here’s what I meant in pseudocode.

 

for ( i = 0; i < X; i++)

            Send Y times A

            Send Y times B

            Send Y times C

 

I dropped the idea of calling fireUntilHalt() and now I call fireAllRules after every single insert, just to be quick. This avoids the problem of getting random execution durations. Now I produce nearly constant times every time I execute this. But it is still not very satisfying. These are just a few hundred events. In a real business scenario it will be a lot more. Increasing X will cause the time to go up linearly which is ok, but increasing Y will have the time go up overproportional, which is not acceptable. We will evaluate this now with a really good machine. But it would be interesting to see what results others achieve in this scenario.

 

Best regards,

Oliver


     


SEEBURGER AG   Vorstand/Seeburger Executive Board:
Sitz der Gesellschaft/Registered Office:   Bernd Seeburger, Axel Haas, Michael Kleeberg
Edisonstr. 1  
D-75015 Bretten Vorsitzender des Aufsichtsrats/Chairperson of the Seeburger Supervisory Board:
Tel.: 07252 / 96 - 0 Dr. Franz Scherer
Fax: 07252 / 96 - 2222
Internet: http://www.seeburger.de Registergericht/Commercial Register:
e-mail: info@seeburger.de HRB 240708 Mannheim


Dieses E-Mail ist nur für den Empfänger bestimmt, an den es gerichtet ist und kann vertrauliches bzw. unter das Berufsgeheimnis fallendes Material enthalten. Jegliche darin enthaltene Ansicht oder Meinungsäußerung ist die des Autors und stellt nicht notwendigerweise die Ansicht oder Meinung der dar. Sind Sie nicht der Empfänger, so haben Sie diese E-Mail irrtümlich erhalten und jegliche Verwendung, Veröffentlichung, Weiterleitung, Abschrift oder jeglicher Druck dieser E-Mail ist strengstens untersagt. Weder die noch der Absender (Oliver Roess) übernehmen die Haftung für Viren; es obliegt Ihrer Verantwortung, die E-Mail und deren Anhänge (0) auf Viren zu prüfen.

The present email addresses only the addressee which it targets and may contain confidential material that may be protected by the professional secret. The opinions reflected herein are not necessarily the one of the . If you are not the addressee, you have accidentally got this email and are not enabled to use, publish, forward, copy or print it in any way. Neither the , nor the sender (Oliver Roess) are liable for viruses, being your own responsibility to check this email and its attachments (0) for this purpose.



_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users