More info... This behavior is reproducible in the Drools JPA test cases.
In org.drools.persistence.session.PersistentStatefulSessionTest.testPersistenceState() and testPersistenceRuleSet(), if you add a breakpoint before loading the processInstance the last time (when it is null because the process has "completed"), you can see that processInstance.getState() returns 1 (ACTIVE) instead of 2 (COMPLETE). I added the ConsoleLogger to the ksession and can see the "AFTER RULEFLOW COMPLETED" log message. In the other test cases, the state is correctly set to 2 after the process completes. On Mon, Mar 7, 2011 at 11:21 AM, Dan Nathanson <d...@ddnconsulting.com>wrote: > Hi, > > I'm seeing some odd behavior in Drools Flow 5.1.1. When using JPA and > creating a StatefulKnowledgeSession using > JPAKnowledgeService.newStatefulKnowledgeSession(), processes look like they > run to completion, but calling RuleFlowProcessInstance.getState() on process > instances created froim this knowledge session returns 1 (STATE_ACTIVE). > Calling getActiveNodeIds() throws a NullPointerException. > > If I get a StatefulKnowledgeSession without JPA by calling > KnowledgeBase.newStatefulKnowledgeSession(), getState() returns 2 > (STATE_COMPLETED). > > I added KnowledgeRuntimeLoggerFactory.newConsoleLogger(knowledgeSession) > and can see in both cases that the process is complete. > > Has this been seen before? Is it a known bug? Am I doing something wrong? > > Regards, > > Dan Nathanson > >
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users