This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 43895 - [perf] finding subclasses/implementors is slow
Summary: [perf] finding subclasses/implementors is slow
Status: RESOLVED FIXED
Alias: None
Product: java
Classification: Unclassified
Component: Unsupported (show other bugs)
Version: 4.x
Hardware: PC Linux
: P3 blocker (vote)
Assignee: issues@java
URL:
Keywords: PERFORMANCE
Depends on:
Blocks:
 
Reported: 2004-05-26 15:14 UTC by Martin Matula
Modified: 2007-09-26 09:14 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Matula 2004-05-26 15:14:50 UTC
Currently finding subclasses/implementors of a
given class/interface is too slow. This slows down
finding usages, more accurate code completion, etc.
Performance of getSubclasses needs to be improved by:
1) storing superclass and implemented interfaces
of a given class persistently (lazily) - this will
avoid parsing of the potential subclasses if their
superclass/interfaces information is already
available in the storage
2) improve subclasses finding alorithm (find out
using lexical analysis if a given identifier is
used in extends or implements clause before
actually parsing the file)
3) third possible improvement can be to have a
separate superclass/superinterfaces index
Comment 1 Tomas Hurka 2004-05-31 15:42:03 UTC
Partial fix done.
Checking in SubClassesCollection.java;
/cvs/java/javacore/src/org/netbeans/modules/javacore/jmiimpl/javamodel/Attic/
SubClassesCollection.java,v  <--  SubClassesCollection.java
new revision: 1.1.2.2.2.1; previous revision: 1.1.2.2
done
Modifiers are now used to reduce number of searched resources.
Comment 2 Tomas Hurka 2004-06-22 08:42:00 UTC
Moved to new subcomponent java/javacore.
Comment 3 Martin Matula 2004-08-01 17:23:21 UTC
Lowering priority (this issue is not critical for promo-D).
Comment 4 Martin Matula 2004-08-23 14:11:49 UTC
The performance of finding subclasses/implementors was significantly
improved by the merge of persistent features (superclasses/interfaces
are now persisted).
Comment 5 Quality Engineering 2007-09-20 12:19:35 UTC
Reorganization of java component