[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.modeling.m2t] Re: Galileo performance twice as slow?

Hi Jos,

please try to put the code directly before the "runner.run". Furthermore please ensure that the referenced templates and extensions are directly on the classpath of the plugin that contains the FileTrack-class or at least registered via an explicit buddy policy. Otherwise the classloader is very slow when it comes to resolution of types etc.

Hope that helps,
Sebastian
--
Need professional support for Eclipse Modeling?
Go visit: http://xtext.itemis.com

Am 21.08.09 12:14, schrieb Jos Warmer:
Sebastian,

We have quite a lot of plugins running. There are two that are involved
in starting the workflow.

The workflow is initiated through a Builder, which is part of the plugin
org.mod4j,.eclipse.
The Builder calls a method fro a second plugin org.mod4j.common.
 From this method the MWE workflowrunner is started as follows:

WorkflowRunner runner = new WorkflowRunner();

if (!runner.run(wfFile, new NullProgressMonitor(), properties,
slotContents)) {
logger.error("------- ERROR(S) detected while running workflow : [" +
wfFile + "] ");
throw new Mod4jWorkflowException("ERROR(S) detected while running
workflow :" + wfFile);
}

The call to runner.run(...) is the one taking up all the time. I have
tried to put the code to configure the caching recource loader in the
Activator of both the org.mod4j.eclipse and the org.mod4j.common plugin.
There is no observable difference in performance.

The exact code that I added in the Activator in e.g org.mod4j.common is:

CachingResourceLoaderImpl crl = new CachingResourceLoaderImpl(new
OsgiResourceLoader(
Activator.PLUGIN_ID, // The Activator in which this code resides
FileTrack.class.getClassLoader() // FileTrack is a class inside
org.modj.common
)
); // a class from this plugin

ResourceLoaderFactory.setCurrentThreadResourceLoader(crl);

Any ideas?

Jos,