My scenario is a rule that is firing over a collection. For each item in that collection a ruleflow starts to handle it. Right now the ruleflow just uses the log workitem to log the steps. When there are ~600 items in the collection I'm getting stack overflows. Granted the processes could be optimized (I'd really like to take each thing in the collection that matched and start a process for the set of them). Still is there a limit to the number of active processes with work items?
java.lang.StackOverflowError
at java.lang.Long.valueOf(Long.java:547)
at org.drools.workflow.core.impl.NodeContainerImpl.getNode(NodeContainerImpl.java:44)
at org.drools.workflow.core.impl.WorkflowProcessImpl.getNode(WorkflowProcessImpl.java:47)
at org.drools.workflow.core.impl.WorkflowProcessImpl.internalGetNode(WorkflowProcessImpl.java:51)
at org.drools.workflow.instance.impl.NodeInstanceImpl.getNode(NodeInstanceImpl.java:90)
at org.drools.workflow.instance.impl.ExtendedNodeInstanceImpl.getExtendedNode(ExtendedNodeInstanceImpl.java:24)
at org.drools.workflow.instance.impl.ExtendedNodeInstanceImpl.triggerEvent(ExtendedNodeInstanceImpl.java:41)
at org.drools.workflow.instance.impl.ExtendedNodeInstanceImpl.internalTrigger(ExtendedNodeInstanceImpl.java:28)
at org.drools.workflow.instance.node.EventBasedNodeInstance.internalTrigger(EventBasedNodeInstance.java:30)
at org.drools.workflow.instance.node.WorkItemNodeInstance.internalTrigger(WorkItemNodeInstance.java:80)
at org.drools.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:111)
at org.drools.workflow.instance.impl.NodeInstanceImpl.triggerConnection(NodeInstanceImpl.java:141)
at org.drools.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:128)
at org.drools.workflow.instance.impl.ExtendedNodeInstanceImpl.triggerCompleted(ExtendedNodeInstanceImpl.java:37)
at org.drools.workflow.instance.node.EventBasedNodeInstance.triggerCompleted(EventBasedNodeInstance.java:96)
at org.drools.workflow.instance.node.EventBasedNodeInstance.triggerCompleted(EventBasedNodeInstance.java:77)
at org.drools.workflow.instance.node.WorkItemNodeInstance.triggerCompleted(WorkItemNodeInstance.java:192)
at org.drools.workflow.instance.node.WorkItemNodeInstance.workItemCompleted(WorkItemNodeInstance.java:244)
at org.drools.workflow.instance.node.WorkItemNodeInstance.signalEvent(WorkItemNodeInstance.java:222)
at org.drools.workflow.instance.impl.WorkflowProcessInstanceImpl.signalEvent(WorkflowProcessInstanceImpl.java:258)
at org.drools.process.instance.impl.DefaultWorkItemManager.completeWorkItem(DefaultWorkItemManager.java:96)
at com.jsi.inactivity.DroolsTest$1.executeWorkItem(DroolsTest.java:40)