Hi Wolfgang,
i think that have to study more in deed some manuals, because there are some aspects not very clear, in particular the threads behavior.
For example, i have a class running in a container (thread A) that launch the session as follow:
......
ksession = kbase.newStatefulKnowledgeSession();
......
Thread t = new Thread(new Runnable() { public void run() { ksession.fireUntilHalt();}});
t.setName("ExpertSystem");
t.start();
the same thread A insert event into a stream:
.....
entryPoint = ksession.getWorkingMemoryEntryPoint(entryPointName);
.....
entryPoint.insert(obs);
i have a rule some rules such as these:
rule "gas1-event"
salience 10
no-loop
when
$obs : GasObservation( $obsLocation : location, gasname == "UN 1017", value > 60 ) over window:length(1) from entry-point lowLevelSensorStream
not GasEvent( gasname == "UN 1017", this meets[50s] $obs, location geoIntersects $obsLocation )
then
insert(new GasEvent( $obs, "UN 1017 value > threshold[60]", Event.THREAT_HIGH, $obsLocation, $obs.getSensor()));
end
rule "gas1-event-update"
salience 5
no-loop
when
$obs : GasObservation( $obsLocation : location, gasname == "UN 1017", value > 60 ) over window:length(1) from entry-point lowLevelSensorStream
$event : GasEvent( gasname == "UN 1017", this meets[50s] $obs, location geoIntersects $obsLocation )
then
Event e = Event.clone($event);
insert( e );
retract($event);
retract($obs);
end
i see that there are some other threads that insert new event and some others retract them.
How is the thread model?
Thanks a lot,
Matteo.
What's the declare for the Event type? What does rule gas2-event do?
-W2012/3/2 Matteo Cusmai <cusmaimatteo@gmail.com>
_______________________________________________Hi all,
i have a big problem with drools fusion.
I insert some new event (pojo object) into Working Memory, but another thread retract it after a few ms.
Someone could tell me why?
Thanks a lot,
[java] gas2-event: 1330701201208
[java] INFO [2012-03-02 16:13:21,261] [ExpertSystem] (ExpertVS.java:141) - **** eventRetracted: 1330701201232/30/32/0/100
[java] INFO [2012-03-02 16:13:31,224] [Thread-19] (ExpertVS.java:135) - objectInserted org.dfms.model.observation.GasObservation@1a30ef85
[java] INFO [2012-03-02 16:13:31,225] [Thread-19] (ExpertVS.java:135) - objectInserted org.dfms.model.observation.GasObservation@2bd1232
[java] INFO [2012-03-02 16:13:31,226] [Thread-19] (ExpertVS.java:135) - objectInserted org.dfms.model.observation.GasObservation@4045acb5
[java] INFO [2012-03-02 16:13:31,227] [Thread-19] (ExpertVS.java:135) - objectInserted org.dfms.model.observation.TemperatureObservation@1e4dc00a
[java] INFO [2012-03-02 16:13:31,227] [Thread-19] (ExpertVS.java:135) - objectInserted org.dfms.model.observation.HumidityObservation@27ae011
[java] INFO [2012-03-02 16:13:31,227] [pool-1-thread-1] (ExpertVS.java:124) - **** eventInserted: 1330701211226/30/32/0/100
[java] INFO [2012-03-02 16:13:31,240] [Thread-19] (ExpertVS.java:135) - objectInserted org.dfms.model.observation.RadiationObservation@510c7d5c
[java] INFO [2012-03-02 16:13:31,251] [pool-1-thread-1] (ExpertVS.java:143) - objectRetracted ==>[ObjectRetractedEventImpl: getFactHandle()=1:105:45945394:45945394:105:lowLevelSensorStream, getOldObject()=org.dfms.model.observation.GasObservation@2bd1232, getKnowledgeRuntime()=org.drools.impl.StatefulKnowledgeSessionImpl@7224e11c, getPropagationContext()=PropagationContextImpl [activeActivations=0, dormantActivations=0, entryPoint=EntryPoint::lowLevelSensorStream, factHandle=1:105:45945394:45945394:105:lowLevelSensorStream, leftTuple=1:105:45945394:45945394:105:lowLevelSensorStream
[java] [fact 0:0:124232201:1306428912:0:DEFAULT:org.drools.reteoo.InitialFactImpl@4dde85f0]
[java] , originOffset=-1, propagationNumber=220, rule=[Rule name=gas2-event, agendaGroup=MAIN, salience=10, no-loop=true], type=1]]
[java] gas2-event: 1330701211203
[java] INFO [2012-03-02 16:13:31,261] [ExpertSystem] (ExpertVS.java:141) - **** eventRetracted: 1330701211226/30/32/0/100
[java] INFO [2012-03-02 16:13:31,262] [ExpertSystem] (ExpertVS.java:143) - objectRetracted ==>[ObjectRetractedEventImpl: getFactHandle()=1:101:1512664237:1512664237:101:lowLevelSensorStream, getOldObject()=org.dfms.model.observation.TemperatureObservation@5a296cad, getKnowledgeRuntime()=org.drools.impl.StatefulKnowledgeSessionImpl@7224e11c, getPropagationContext()=PropagationContextImpl [activeActivations=0, dormantActivations=0, entryPoint=EntryPoint::lowLevelSensorStream, factHandle=1:101:1512664237:1512664237:101:lowLevelSensorStream, leftTuple=null, originOffset=-1, propagationNumber=224, rule=null, type=1]]
[java] INFO [2012-03-02 16:13:31,262] [ExpertSystem] (ExpertVS.java:143) - objectRetracted ==>[ObjectRetractedEventImpl: getFactHandle()=1:102:1436418073:1436418073:102:lowLevelSensorStream, getOldObject()=org.dfms.model.observation.HumidityObservation@559e0019, getKnowledgeRuntime()=org.drools.impl.StatefulKnowledgeSessionImpl@7224e11c, getPropagationContext()=PropagationContextImpl [activeActivations=0, dormantActivations=0, entryPoint=EntryPoint::lowLevelSensorStream, factHandle=1:102:1436418073:1436418073:102:lowLevelSensorStream, leftTuple=null, originOffset=-1, propagationNumber=226, rule=null, type=1]]
[java] INFO [2012-03-02 16:13:31,263] [ExpertSystem] (ExpertVS.java:143) - objectRetracted ==>[ObjectRetractedEventImpl: getFactHandle()=1:103:2014876984:2014876984:103:lowLevelSensorStream, getOldObject()=org.dfms.model.observation.RadiationObservation@78189538, getKnowledgeRuntime()=org.drools.impl.StatefulKnowledgeSessionImpl@7224e11c, getPropagationContext()=PropagationContextImpl [activeActivations=0, dormantActivations=0, entryPoint=EntryPoint::lowLevelSensorStream, factHandle=1:103:2014876984:2014876984:103:lowLevelSensorStream, leftTuple=null, originOffset=-1, propagationNumber=228, rule=null, type=1]]
[java] INFO [2012-03-02 16:13:41,228] [ExpertSystem] (ExpertVS.java:143) - objectRetracted ==>[ObjectRetractedEventImpl: getFactHandle()=1:108:508411914:508411914:108:lowLevelSensorStream, getOldObject()=org.dfms.model.observation.TemperatureObservation@1e4dc00a, getKnowledgeRuntime()=org.drools.impl.StatefulKnowledgeSessionImpl@7224e11c, getPropagationContext()=PropagationContextImpl [activeActivations=0, dormantActivations=0, entryPoint=EntryPoint::lowLevelSensorStream, factHandle=1:108:508411914:508411914:108:lowLevelSensorStream, leftTuple=null, originOffset=-1, propagationNumber=230, rule=null, type=1]]
[java] INFO [2012-03-02 16:13:41,230] [ExpertSystem] (ExpertVS.java:143) - objectRetracted ==>[ObjectRetractedEventImpl: getFactHandle()=1:109:41607185:41607185:109:lowLevelSensorStream, getOldObject()=org.dfms.model.observation.HumidityObservation@27ae011, getKnowledgeRuntime()=org.drools.impl.StatefulKnowledgeSessionImpl@7224e11c, getPropagationContext()=PropagationContextImpl [activeActivations=0, dormantActivations=0, entryPoint=EntryPoint::lowLevelSensorStream, factHandle=1:109:41607185:41607185:109:lowLevelSensorStream, leftTuple=null, originOffset=-1, propagationNumber=232, rule=null, type=1]]
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users