Faculty of Information Technology
Software Engineering Group

Opened 5 years ago

Closed 5 years ago

#93 closed defect (fixed)

Optimize recompilation of errorneous classes

Reported by: Jan Vrany Owned by: Jan Vraný
Priority: major Milestone: milestone:
Component: stx:libjava Keywords:
Cc:

Description

When a class is loaded, all erroneous classes are recompiled, hoping that new version of loaded class may fix the problem in
erroneous class.

Bad enough, there's no list of such erroneous class. Instead all classes all scanned and checked whether they are fine or not! This makes the system sluggish when a lot of classes are loaded.

The proper solution would be:

  • to check class for error on load
  • when a class contains errors, put it to a (weak) array of erroneous classes.

The check during class load is almost for free - class reader has to scan the constant pool anyway!

Change History (1)

comment:1 Changed 5 years ago by Jan Vrany

Resolution: fixed
Status: newclosed

Fixed in

  • ad5f53826f0e - Issue #93 [1/3]: Added 2 simple benchmarks to measure performance of class loading
  • 7be362f041a8 - Issue #93 [2/3]: Avoid (expensive) test for compilation error at (re)compilation time
  • 5d22435da54d - Issue #93 [3/3]: Avoid (expensive) registry scan to find all erroneous classes
Note: See TracTickets for help on using tickets.