Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 363681 - "Finite Difference Worker 1" - internal error error message
Summary: "Finite Difference Worker 1" - internal error error message
Status: RESOLVED FIXED
Alias: None
Product: STEM
Classification: Technology
Component: Simulation (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 1.1.2   Edit
Assignee: Stefan Edlund CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-11-14 04:17 EST by Jan-Frederik Wigger CLA
Modified: 2011-11-14 17:32 EST (History)
1 user (show)

See Also:


Attachments
a toy scenario producing the error message (391.62 KB, application/x-zip-compressed)
2011-11-14 04:17 EST, Jan-Frederik Wigger CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan-Frederik Wigger CLA 2011-11-14 04:17:15 EST
Created attachment 206928 [details]
a toy scenario producing the error message

During the simulation, an error message dialog pops up:

An internal error occured during: "Finite Difference Worker 1".

The corresponing console log message is:

!ENTRY org.eclipse.core.jobs 4 2 2011-11-14 10:12:10.952
!MESSAGE An internal error occurred during: "Finite Difference Worker 1".
!STACK 0
java.util.ConcurrentModificationException
	at org.eclipse.emf.common.util.AbstractEList$EIterator.checkModCount(AbstractEList.java:762)
	at org.eclipse.emf.common.util.AbstractEList$EIterator.doNext(AbstractEList.java:716)
	at org.eclipse.emf.common.util.AbstractEList$EIterator.next(AbstractEList.java:696)
	at org.eclipse.stem.diseasemodels.standard.impl.StandardDiseaseModelImpl.applyExternalDeltas(StandardDiseaseModelImpl.java:327)
	at org.eclipse.stem.solvers.fd.impl.FiniteDifferenceImpl.computeDeltasStep(FiniteDifferenceImpl.java:260)
	at org.eclipse.stem.solvers.fd.impl.FdJob.run(FdJob.java:63)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)




You already taught me how to avoid this:
-> set the number of worker threads to 1 (Window->Preferences STEM->Solver then "Number of concurrent worker threads").

and what's causing it:
The problem is really how we determine which nodes a thread updates, especially in a case when you have population models that only works on a single node.
Comment 1 Stefan Edlund CLA 2011-11-14 13:01:51 EST
Assign to Stefan.

I will try and get a fix in for the 1.2.3 release (Nov 21).
Comment 2 Stefan Edlund CLA 2011-11-14 17:32:38 EST
The fix will be available in the 1.2.3 RC4 build.