Hi Thomas, thanks for the info!
I googled it quite a bit and I think it’s a path to be explored, albeit I’ve saw several messages on the mailing list regarding performance issues
when using fireUntilHalt.
Nonetheless, I must get some free time to change my JUnits to test that.
Thanks for pointing out the direction!
|
|
Vítor Mendonça Moreira |
|
From: rules-users-bounces@lists.jboss.org [mailto:rules-users-bounces@lists.jboss.org]
On Behalf Of Swindells, Thomas
Sent: quinta-feira, 17 de Março de 2011 11:29
To: Rules Users List
Subject: Re: [rules-users] Basic doubt regarding Drools Fusion - @expires
Have you looked at fireUntilHalt?
From: rules-users-bounces@lists.jboss.org [mailto:rules-users-bounces@lists.jboss.org]
On Behalf Of Makewise - Vitor Rui Mendonça
Sent: 17 March 2011 11:20
To: 'Rules Users List'
Subject: Re: [rules-users] Basic doubt regarding Drools Fusion - @expires
Edison, first of all, thanks for your quick reply!
Those initial words caught my attention, although: “By default, Drools does not start any internal thread”…
What do you mean “by default”?
I know there are ways to force the event to be expired but I’m looking for a solution that doesn’t involve to write new rules.
For example, I’m using this kind of solution:
declare A
@role( event )
@expires( 1h )
end
rule
"internal - expiring A"
timer(int:1h)
when
$a : A()
from entry-point
"incoming"
then
retract($a);
end
Although this solution works (from Drools 5.1), I’m forced to write a rule to expire an event that’s supposed to be expired initially.
There’s a simpler way to do this? I’m thinking correctly?
Once again, thanks!
|
|
Vítor Mendonça Moreira |
|
Declaração:
A informação contida nesta mensagem, e os ficheiros anexos, é privilegiada e confidencial, destinando-se exclusivamente ao(s) destinatário(s).Se não é o destinatário (ou o responsável pela sua entrega ao destinatário) e recebeu a mesma por engano, fica notificado
que é estritamente proibido reproduzir, guardar ou distribuir toda ou qualquer parte desta mensagem e ficheiros anexos.Por favor reencaminhe a mensagem para o responsável pelo seu envio ou contacte-nos por telefone e elimine a mensagem e ficheiros anexos do
seu computador,sem os reproduzir.
Disclaimer:
The information contained in this message, and any files attached, is privileged and confidential, and intended exclusively for the included addresses.If you are not the intended recipient (or the person responsible for delivering to the intended recipient)
and received this message by mistake, be aware that copy, storage, distribution or any other use of all or part of this message and the files attached is strictly prohibited. Please notify the sender by reply e-mail or contact us by telephone and delete this
message and the files attached, without retaining a copy.
From: rules-users-bounces@lists.jboss.org [mailto:rules-users-bounces@lists.jboss.org]
On Behalf Of Edson Tirelli
Sent: quarta-feira, 16 de Março de 2011 18:38
To: Rules Users List
Subject: Re: [rules-users] Basic doubt regarding Drools Fusion - @expires
By default, Drools does not start any internal thread, so that you can embed it in non-multithread applications or in JEE containers. That means that the actual release of events in such cases depends on triggers. In your example, after
1h has passed, whenever something happens to the session (a new rule is fired, a new event is inserted, the session clock is advanced, etc), the event will be expired as part of the action. Remember though that it only happens when running in STREAM mode.
In CLOUD mode, event garbage collection does not make sense and will not happen.
Edson
2011/3/16 Makewise - Vitor Rui Mendonça <Vitor.Mendonca@brisa.pt>
Hi all!
I’ve got a really basic doubt… I’ve read several documentation regarding it but I think I need some advice here…
Imagine that I have an event:
declare A
@role( event )
@expires( 1h )
end
On my Java code, I call “fireAllRules()” method every time that I put an event into the working memory.
My doubt: When does event A expires?
a)
One hour after it was inserted (time-based and without the “fireAllRules()” method call) or
b)
by calling “fireAllRules()” method (event-based)
T.I.A.
|
|
Vítor Mendonça Moreira |
|
Declaração:
A informação contida nesta mensagem, e os ficheiros anexos, é privilegiada e confidencial, destinando-se exclusivamente ao(s) destinatário(s).Se não é o destinatário (ou o responsável pela sua entrega ao destinatário) e recebeu a mesma por engano, fica notificado
que é estritamente proibido reproduzir, guardar ou distribuir toda ou qualquer parte desta mensagem e ficheiros anexos.Por favor reencaminhe a mensagem para o responsável pelo seu envio ou contacte-nos por telefone e elimine a mensagem e ficheiros anexos do
seu computador,sem os reproduzir.
Disclaimer:
The information contained in this message, and any files attached, is privileged and confidential, and intended exclusively for the included addresses.If you are not the intended recipient (or the person responsible for delivering to the intended recipient)
and received this message by mistake, be aware that copy, storage, distribution or any other use of all or part of this message and the files attached is strictly prohibited. Please notify the sender by reply e-mail or contact us by telephone and delete this
message and the files attached, without retaining a copy.
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Edson Tirelli
JBoss Drools Core Development
JBoss by Red Hat @ www.jboss.com
**************************************************************************************
This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmaster@nds.com and delete it from your system as well as any copies. The content of e-mails as well as traffic data
may be monitored by NDS for employment and security purposes. To protect the environment please do not print this e-mail unless necessary.
NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, United Kingdom. A company registered in England and Wales. Registered no. 3080780. VAT no. GB 603 8808 40-00
**************************************************************************************