Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 278345 - Performance optimization of Xpand Builder
Summary: Performance optimization of Xpand Builder
Status: CLOSED FIXED
Alias: None
Product: M2T
Classification: Modeling
Component: Xpand (show other bugs)
Version: 0.7.0   Edit
Hardware: All All
: P3 blocker (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-29 04:42 EDT by Heiko Behrens CLA
Modified: 2013-02-21 08:11 EST (History)
2 users (show)

See Also:


Attachments
cached analyzed return types for extensions, enhanced preferences page (34.32 KB, patch)
2009-05-29 04:42 EDT, Heiko Behrens CLA
sven.efftinge: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Heiko Behrens CLA 2009-05-29 04:42:55 EDT
Created attachment 137610 [details]
cached analyzed return types for extensions, enhanced preferences page

This patch reduces the execution time of xpand/xtend projects with many extensions that call each other by an order of magnitude (in my scenario from 75s downto to 3s). It does so by reusing the same execution context per project and caching the analyzed return type of a given extension with a set of passed parameter types.

Also, the preferences page has been updated to control whether the build should analyze changed resources only, all projects they are contained in or every dependent projects, too (default). This gives greater control over what has to be re-analyzed and might be handy as well.
Comment 1 Sven Efftinge CLA 2009-05-29 06:05:49 EDT
patch applied :-)
Comment 2 Patrick Schonbach CLA 2009-05-29 12:24:26 EDT
This patch broke the code of the following classes:

/org.eclipse.xpand.ui/src/org/eclipse/xpand/ui/XpandPluginExecutionContext.java
/org.eclipse.xtend.shared.ui/src/org/eclipse/xtend/shared/ui/expression/PluginExecutionContextImpl.java

The super() call in the constructor of these classes does not reflect the signature change of the super class constructor.
Comment 3 Sven Efftinge CLA 2009-05-29 16:04:49 EDT
sorry, my fault. Is fixed now.
Comment 4 Karsten Thoms CLA 2013-02-21 08:11:43 EST
Bug resolved before Xpand 1.2 release date => Closing