diff options
author | Matthew Davis | 2012-05-02 23:01:49 +0000 |
---|---|---|
committer | Matthew Davis | 2012-05-02 23:01:49 +0000 |
commit | 532fe5a94848c6a9d52ff7e41ee3ff05cb4f2cd7 (patch) | |
tree | 26de2d7838f311dce9d972888dbff5f065ef1591 | |
parent | 46c43f760b664c43b2b50f0122ead7b99d826579 (diff) | |
download | org.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.java | 4 |
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); |