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

Bug 344791

Summary: Memory (Client and Server): CodeCache uses a lot of memory
Product: z_Archived Reporter: Matthias Zimmermann <zimmermann>
Component: ScoutAssignee: Project Inbox <scout.core-inbox>
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Matthias Zimmermann CLA 2011-05-05 03:45:13 EDT
For systems with a large number of codes, the size of the code cache is a problem.

1) AbstractCode contains per default a HashMap and ArrayList for child codes. Most codes however do not contain any children at all. -> should be created on demand.

2) The class CodeRow contains many attributes, which are not always used (initialized with null, pointer still uses memory). To avoid this AbstractCode and MutableCode should not be initialized with CodeRow, but with an interface, such that a custom implementation could be used.

3) Sometimes CodeRows need to be converted to LookupRows (e.g. CodeLookupCall). The conversion is time consuming (or memory consuming if cached). CodeRow looks almost the same as LookupRow, but contains some more values. -> an interface for LookupRow and the same base class would save the problem.

Problems are solved for project Sika, but fix should be included in Scout, for other projects.
Comment 1 Matthias Zimmermann CLA 2011-05-05 03:46:18 EDT
fixed on 17.1.2011, #95492
Comment 2 Matthias Zimmermann CLA 2011-06-28 08:27:15 EDT
shipped with eclipse scout 3.7.0