Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 339194

Summary: [builder] Improve caching during analyzation phase
Product: [Modeling] M2T Reporter: Karsten Thoms <karsten.thoms>
Component: XpandAssignee: Project Inbox <m2t.xpand-inbox>
Status: CLOSED FIXED QA Contact:
Severity: major    
Priority: P3 Flags: karsten.thoms: indigo+
Version: 1.0.2   
Target Milestone: M6   
Hardware: PC   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:

Description Karsten Thoms CLA 2011-03-08 05:44:47 EST
The XtendXpandBuilder lacks performance especially with growing project size. The performance can become totally unnacceptable when the workspace has many resources and the analyzation strategy is configured to analyze the whole project.

Reason is that Xtend files are analyzed multiple times. Also the cache "allExtensionPerResource" from ExecutionContextImpl does not work, since the cache will be filled within a cloned ExecutionContext and the cached information gets lost when the scope of the cloned context is left.

To solve this problem there should be a BuildState object that is used as a cache for already analyzed resources during a build. This BuildState will be set as global variable to the XpandPluginExecutionContext when the builder starts analyzing a project.
Comment 1 Karsten Thoms CLA 2011-03-08 07:33:55 EST
Committed with a418dd0ce60bc8db9fbf6269155689d213903ffb
Comment 2 Karsten Thoms CLA 2013-02-21 08:09:22 EST
Bug resolved before Xpand 1.2 release date => Closing