Very Strange Bug: Rule fails to fire
by Wolfgang Laun
Sorry for the duplication, but this very strange bug sure needs a subject.
On 8 September 2012 13:07, Wolfgang Laun <wolfgang.laun(a)gmail.com> wrote:
> Scenario:
> 5.3.0, STREAM, fireUntilHalt() run in separate thread, AlertEvent events
> inserted every 1 or two seconds.
>
> The following rules should retract ClusterLink facts referencing the
> AlertCluster that is
> selected by the DissolveCluster fact. As soon as there is no such
> ClusterLink any
> more, the AlertCluster and the DissolveCluster facts are to be retracted:
>
> rule "remove link to dissolved AlertCluster"
> agenda-group "dissolve"
> auto-focus true
> when
> DissolveCluster( $cluster: cluster )
> AlertCluster( this == $cluster )
> $clusterLink: ClusterLink( $alertEvent: alertEvent, alertCluster ==
> $cluster )
> AlertEvent( this == $alertEvent ) from entry-point "Cluster Stream"
> then
> System.out.println( "Dissolving...!" );
> retract( $clusterLink );
> end
>
> rule "clean up after dissolving AlertCluster"
> agenda-group "dissolve"
> when
> $dissolveCluster: DissolveCluster( $cluster: cluster )
> $alertCluster: AlertCluster( this == $cluster )
> not ClusterLink( alertCluster == $cluster )
> then
> System.out.println( "Dissolve finished." );
> retract( $alertCluster );
> retract( $dissolveCluster );
> end
>
> Does anybody see anything wrong with these rules?
>
> The problem is that, after all ClusterLinks have been removed, the final
> clean-up rule
> is not executed.
>
> Luckily, the last CE in the first rule isn't necessary. If
> "AlertEvent(...) from ..."
> is removed, both rules work correctly.
>
>
> _______________________________________________
> rules-users mailing list
> rules-users(a)lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
11 years, 6 months
(no subject)
by Wolfgang Laun
Scenario:
5.3.0, STREAM, fireUntilHalt() run in separate thread, AlertEvent events
inserted every 1 or two seconds.
The following rules should retract ClusterLink facts referencing the
AlertCluster that is
selected by the DissolveCluster fact. As soon as there is no such
ClusterLink any
more, the AlertCluster and the DissolveCluster facts are to be retracted:
rule "remove link to dissolved AlertCluster"
agenda-group "dissolve"
auto-focus true
when
DissolveCluster( $cluster: cluster )
AlertCluster( this == $cluster )
$clusterLink: ClusterLink( $alertEvent: alertEvent, alertCluster ==
$cluster )
AlertEvent( this == $alertEvent ) from entry-point "Cluster Stream"
then
System.out.println( "Dissolving...!" );
retract( $clusterLink );
end
rule "clean up after dissolving AlertCluster"
agenda-group "dissolve"
when
$dissolveCluster: DissolveCluster( $cluster: cluster )
$alertCluster: AlertCluster( this == $cluster )
not ClusterLink( alertCluster == $cluster )
then
System.out.println( "Dissolve finished." );
retract( $alertCluster );
retract( $dissolveCluster );
end
Does anybody see anything wrong with these rules?
The problem is that, after all ClusterLinks have been removed, the final
clean-up rule
is not executed.
Luckily, the last CE in the first rule isn't necessary. If "AlertEvent(...)
from ..."
is removed, both rules work correctly.
11 years, 6 months
[Fusion 5.4.0] Condition evaluation broken
by Wolfgang Laun
Scenario:
5.4.0, STREAM, fireUntilHalt() run in separate thread, AlertEvent events
inserted every 1 or two seconds.
The following rule should add the oldest AlertEvent that hasn't been
associated with an AlertCluster
to an AlertCluster and store the cluster reference in AlertEvent.cluster
and add an AlertEvent
reference to the cluster's list:
rule "extend AlertCluster"
when
$alertEvent: AlertEvent( cluster == null ) from entry-point "Cluster
Stream"
not( AlertEvent( cluster == null, this before $alertEvent ) from
entry-point "Cluster Stream" )
$cluster: AlertCluster( eval( $cluster.closeEnough( $alertEvent ) ) )
then
modify( $cluster ){
addAlertEvent( $alertEvent ) // add AlertEvent to AlertCluster's
list
}
modify( $alertEvent ){
setCluster( $cluster ) // store reference to containing AlertCluster
}
end
In spite of the constraint "cluster == null" and using modify for updating
the AlertEvent, the rule
fires repeatedly. Even adding "no-loop true" does not avoid this. (A
redundant constraint
testing for the non-occurrence of the AlertEvent in the AlertCluster's List
alertEvent
The rule executes perfectly well with 5.3.0.
I'm aware of Edson's note indicating some synchronization bug in 5.4.0, but
it's hard to imagine
how a lack of synchronization can be responsible for a problem when inserts
occur at a very
low-rate.
11 years, 6 months
Cancelled step ... : there is no doable move. Terminating phase early.
by Michiel Vermandel
Hi,
I see a warning while solving and I don't really know where to start in finding the cause:
Here is the debug output of the solver:
>>> I see that step 0 already results in a hard-score 0 (!?)
INFO : [2012-09-07 14:56:21,969] Solving started: time spend (90), score (null), new best score (null), random seed (0).
DEBUG: [2012-09-07 14:56:22,376] Step index (0), time spend (499), score (0hard/99soft), initialized planning entity (Inspection of 112474.I#0 -1934359865).
DEBUG: [2012-09-07 14:56:22,704] Step index (1), time spend (827), score (0hard/198soft), initialized planning entity (Inspection of 112474.I#1 -1934359864).
DEBUG: [2012-09-07 14:56:22,990] Step index (2), time spend (1113), score (0hard/297soft), initialized planning entity (Inspection of 112474.I#2 -1934359863).
>>> then after a few hundred steps the hard-score starts to drop?!
DEBUG: [2012-09-07 14:56:30,166] Step index (260), time spend (8289), score (0hard/24974soft), initialized planning entity (Inspection of 61457.I#0 1155198787).
DEBUG: [2012-09-07 14:56:30,189] Step index (261), time spend (8312), score (0hard/25049soft), initialized planning entity (Inspection of 61457.I#1 1155198788).
DEBUG: [2012-09-07 14:56:30,210] Step index (262), time spend (8333), score (0hard/25148soft), initialized planning entity (Inspection of 46045.I#0 1313733879).
DEBUG: [2012-09-07 14:56:30,234] Step index (263), time spend (8357), score (-1hard/25223soft), initialized planning entity (Inspection of 46045.I#1 1313733880).
DEBUG: [2012-09-07 14:56:30,255] Step index (264), time spend (8378), score (-1hard/25298soft), initialized planning entity (Inspection of 23226.I#0 1418884381).
DEBUG: [2012-09-07 14:56:30,281] Step index (265), time spend (8403), score (-1hard/25373soft), initialized planning entity (Inspection of 23226.I#1 1418884382).
>>> hardscore keeps dropping
DEBUG: [2012-09-07 14:56:31,672] Step index (321), time spend (9795), score (-15hard/28951soft), initialized planning entity (Inspection of 8748.I#1 1923067852).
DEBUG: [2012-09-07 14:56:31,703] Step index (322), time spend (9826), score (-15hard/29026soft), initialized planning entity (Inspection of 124206.I#0 2065209261).
DEBUG: [2012-09-07 14:56:31,719] Step index (323), time spend (9842), score (-15hard/29101soft), initialized planning entity (Inspection of 124206.I#1 2065209262).
INFO : [2012-09-07 14:56:31,719] Phase constructionHeuristic ended: step total (324), time spend (9842), best score (-15hard/29101soft).
>>> then I get this warning:
WARN : [2012-09-07 14:56:40,252] Cancelled step index (0), time spend (18375): there is no doable move. Terminating phase early.
INFO : [2012-09-07 14:56:40,252] Phase localSearch ended: step total (0), time spend (18375), best score (-15hard/29101soft).
INFO : [2012-09-07 14:56:40,252] Solving ended: time spend (18375), best score (-15hard/29101soft), average calculate count per second (20824).
I know I give little details b ut I don't know what is relevant.
If someone can point me into some direction I can search and provide more info.
Thanks a lot!
Michiel
-----------------
http://www.codessentials.com - Your essential software, for free!
Follow us at http://twitter.com/#!/Codessentials
11 years, 6 months
IntelliFest Drools & jBPM Healthcare Workshop Agenda (San Diego Oct 2012)
by Mark Proctor
IntelliFest Drools & jBPM Healthcare Workshop Agenda (San Diego Oct 2012)
http://blog.athico.com/2012/09/intellifest-drools-jbpm-healthcare.html
------
Yesterday I posted the general Drools & jBPM work shop agenda. This year there is an additional day dedicated to Healthcare professionals, with top keynote speaker Dr Robert Greenes.
The Healthcare day is being chaired by Captain Emory Fry, MD and Dr Davide Sottara.
Monday 22nd October, Bahia Resort Hotel, San Diego. Free Entrance to first 100 registrations.
0900-0925 Introductions and social time
0930-1020 Dr Robert Greenes, Department of Biomedical Informatics, Arizona State University
Key Note : Embedding Decision Support in Clinical Systems
1030-1120 Dr Aziz Boxwala, Division of Biomedical Informatics, University of California
Clinical Decision Support Consortium
1130-1200 Dr Seong Ki Mun, President and CEO of OSEHRA
Open Source Electronic Health Record Agent
1200:1300 Lunch
1300-1350 Captain Emory Fry, MD and Dr Davide Sottara
Socratic Grid : Distributed Decision Support For Heathcare
1400-1450 David Shields, Health ITS, University of Utah
OpenCDS: a Clinical Decision Support Infrastructure Based on Drools
1500-1520 Harold Solbring, Division of Biomedical Informatics, Mayo Clinic
Semantic Wiki
1530-1655 Conor Dowling, Caregraf
Semantic Terminology Services
1600-1620 Dr Xiao Hu, Department of Neurosurgery, University of California
Clinical Decision Support Driven Alarms
1630-1700
Panel Discussion - Collaboration Opportunities
11 years, 6 months
Problems with guvnor 5.3.0
by paco
Hello everybody
My rules work well on guvnor 5.0.1
But when I run on guvnor 5.3.0
I get the following error:
Unable to Analyse Expression int i=0; for(i=0; i< $methode.size(); i++) {
…………………………………………………….; };: [Error: no such identifier: i] [Near : {...
for(i=0; i< $ methode.size(); i++) { ....}] ^ [Line: 2, Column: 11]
Can someone tell me what does not work well?
Thanks
--
View this message in context: http://drools.46999.n3.nabble.com/Problems-with-guvnor-5-3-0-tp4019647.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
11 years, 6 months
Context Sensitivity in DSL
by dme1
Hi,
Is there any way DSLs can be context sensitive when using these in Guvnor?
What I mean is that if I have DSL for the Class/Object and its field, then
after I select the DSL for the Class/Object can I only see the fields
applicable to that Class/Object (by say selecting/checking a flag or better
still while I am on that condition; and show the list of all DSLs when I add
a new condition).
This will help our Business Analysts to code rule more quickly, specially
since we have a lot of business vocabulary which the BAs have to see
(Working Sets for filtering vocabulary is not an option).
Thank,
dme
--
View this message in context: http://drools.46999.n3.nabble.com/Context-Sensitivity-in-DSL-tp4019638.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
11 years, 6 months
Mail System Error - Returned Mail
by Returned mail
The original message was received at Fri, 7 Sep 2012 16:50:17 +0530 from lists.jboss.org [141.14.148.231]
----- The following addresses had permanent fatal errors -----
rules-users(a)lists.jboss.org
----- Transcript of the session follows -----
... while talking to 131.246.23.202:
550 5.1.2 <rules-users(a)lists.jboss.org>... Host unknown (Name server: host not found)
11 years, 6 months