Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Davis2012-05-02 23:01:49 +0000
committerMatthew Davis2012-05-02 23:01:49 +0000
commit532fe5a94848c6a9d52ff7e41ee3ff05cb4f2cd7 (patch)
tree26de2d7838f311dce9d972888dbff5f065ef1591
parent46c43f760b664c43b2b50f0122ead7b99d826579 (diff)
downloadorg.eclipse.stem-532fe5a94848c6a9d52ff7e41ee3ff05cb4f2cd7.tar.gz
org.eclipse.stem-532fe5a94848c6a9d52ff7e41ee3ff05cb4f2cd7.tar.xz
org.eclipse.stem-532fe5a94848c6a9d52ff7e41ee3ff05cb4f2cd7.zip
Fix to memory leak in simulation run. Copy the graph partitioner held by the sim mgr vs. re-using to avoid retaining canonical graph
git-svn-id: http://dev.eclipse.org/svnroot/technology/org.eclipse.stem/trunk@3133 92a21009-5b66-0410-b83a-dc787c41c6e9
-rw-r--r--core/org.eclipse.stem.jobs/src/org/eclipse/stem/jobs/simulation/SimulationManager.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/core/org.eclipse.stem.jobs/src/org/eclipse/stem/jobs/simulation/SimulationManager.java b/core/org.eclipse.stem.jobs/src/org/eclipse/stem/jobs/simulation/SimulationManager.java
index 6b6b3b6ff..677725146 100644
--- a/core/org.eclipse.stem.jobs/src/org/eclipse/stem/jobs/simulation/SimulationManager.java
+++ b/core/org.eclipse.stem.jobs/src/org/eclipse/stem/jobs/simulation/SimulationManager.java
@@ -319,9 +319,11 @@ public class SimulationManager extends ExecutableManager implements
copiedScenario.setSequencer(EcoreUtil.copy(scenario.getSequencer()));
}
+ // Copy the graph partitioner to avoid memory leak due to retained decorators
+ GraphPartitioner copiedPartition = EcoreUtil.copy(partitioner);
final Simulation simulation = new Simulation(copiedScenario,
- getAndIncrementSimulationSequenceNumber(), partitioner);
+ getAndIncrementSimulationSequenceNumber(), copiedPartition);

Back to the top