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(a)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(a)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(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users