Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 2.1.0
-
Fix Version/s: 2.1.2
-
Component/s: Engine - General
-
Labels:None
-
Familiarity:Similar
Description
WorkflowInstanceFacade has a WeakHashMap from workflow ID to workflow instance. However, a WeakHashMap is only using weak references to the KEYs, ie. strings, and as the string for workflow ID is also inside the WorkflowInstanceFacadeImpl these entries would never be removed.
Should be changed to be a map to WeakReference<WorkflowInstanceFacade>. This public static map (..) is only used by net.sf.taverna.t2.activities.dependencyactivity.AbstractAsynchronousDependencyActivity as far as I can tell.

use weak references to the facades to avoid facade memory leak.
don't add WorkflowRunIdentifier entity to context for nested workflows (not needed anyway - and also add a
T2-1135memory leak)T2-1135memory leak)