-
Bug Report
-
Resolution: Won't Fix
-
L3 - Default
-
None
-
7.5.0
-
Ubuntu 16.4 - 64 bit / Java 1.8.0_74
$_JAVA_OPTIONS -Xms1024m -Xmx4G -Xss256m
i7-5600U CPU @ 2.60GHz × 4
11, 6GiB
Problem:
Instantiating SequenceFlows in a graph with a lot of nodes becomes increasingly slow. While the instantiation of Tasks stays pretty constant (for my machine starting at 0ms and going to 1ms after ~500 Tasks), the instantiation of SequenceFlows though started at an already slow 20ms with ~500 Tasks and then regressed to around 70ms after 100 SequenceFlows.
This behavior seems unexpected. Also note that adding the element as a child stays constant.
Here is the Scala code called for all elements. The run-times above refer to the .newInstance() line.
def createElement[T <: BpmnModelElementInstance](modelInstance: BpmnModelInstance, parentElement: BpmnModelElementInstance, id: String, elementClass: Class[T]): T = { val element = modelInstance.newInstance(elementClass) element.setAttributeValue("id", id, true)"adding to DOM") parentElement.addChildElement(element) element }