Community
Participate
Working Groups
Bug 322928 mentions that under OT/Equinox threads that are explicitely created/started given a plain Runnable still have a problem. This effects only OT/Equinox settings because in plain application mode the OTRE weaves into all run() methods, whereas OT/Equinox doesn't look into all classes. In real life the thread "Compiler Processing Task" is a victim of the current incompleteness of our solution. This thread is started by org.eclipse.jdt.internal.compiler.ProcessTaskManager and if deactivate() + activate() is called for a team, activation is not restored for that particular thread. Bug 322928 also mentions that this situation is rare within the Eclipse SDK. But here we have a relevant witness. Not sure if a general solution is feasible or if we should add special case behavior for this thread.
Bulk move to 2.8
bulk move to 2.8.1
The original mechanism as of bug 322928 was dropped during the migration bug 406518, and later re-implemented in bug 413857 (which actually links here). Later bug 493556 introduced the option to restrict thread weaving to one of { Never, Base, Always } Given that bug 413857 did include handling of Runnable implementations, I'm assuming this issue to be fixed. Additionally, team org.eclipse.objectteams.otdt.internal.compiler.adaptor.CompilationThreadWatcher (from the initial commit) seems to address this same issue of extending activation to the newly created thread. I'm reluctant, however, to remove the extendActivation() trick.