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

Bug 314017

Summary: Outline performance problems
Product: [Modeling] TMF Reporter: Ed Willink <ed>
Component: XtextAssignee: Project Inbox <tmf.xtext-inbox>
Status: CLOSED DUPLICATE QA Contact:
Severity: normal    
Priority: P3 CC: marco, sebastian.zarnekow, sven.efftinge
Version: 1.0.0Flags: sebastian.zarnekow: helios+
Target Milestone: SR1   
Hardware: PC   
OS: Windows Vista   
Whiteboard:

Description Ed Willink CLA 2010-05-22 10:58:28 EDT
Refreshing the outline has a very severe impact on performance for non-trivial models (as reported in Bug 283710 which has been closed without resolving the issue.)

There seem to be three problems.

a) Outline computation occurs on the UI thread (and may involve proxy resolution and so model loading).
b) The entire outline is computed
c) The entire outline is recomputed

Suggestions:

a) so long as Outline computation is not fast, it should occur on a Worker Thread.

b) it would be much better to compute the outline lazily, so that closed nodes are not computed until opened.

c) it would be much better to recompute only damaged regions, which requires a declarative mechanism to define outline content so that damage ripple can be determined.
Comment 1 Sven Efftinge CLA 2010-05-24 00:19:31 EDT

*** This bug has been marked as a duplicate of bug 283710 ***
Comment 2 Sebastian Zarnekow CLA 2010-07-22 14:30:36 EDT
Implementation is similar to suggestion (b). Further changes require a refactoring of the outline infrastructure which is not possible in a SR1.