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 21601 - Speed up explorer folder expansion
Summary: Speed up explorer folder expansion
Status: RESOLVED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: Explorer (show other bugs)
Version: 3.x
Hardware: Sun Solaris
: P2 blocker (vote)
Assignee: Petr Nejedly
URL:
Keywords: PERFORMANCE
Depends on:
Blocks:
 
Reported: 2002-03-14 16:50 UTC by Petr Nejedly
Modified: 2008-12-23 13:36 UTC (History)
0 users

See Also:
Issue Type: TASK
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Petr Nejedly 2002-03-14 16:50:42 UTC
Speed up expansion of folders and subfolders in explorer or at least allow
concurent expansion of more folders. It is not explorer problem itself,
but it is very explorer connected so I'm tracking it here.
Comment 1 Petr Nejedly 2002-03-14 17:12:12 UTC
Typical use case is that user traverses his filesystem
through some big package to some subpackage and while the big
package is being parsed/updated, it is impossible to continue
traversing to already visible subpackage.
Comment 2 Petr Nejedly 2002-04-23 12:22:34 UTC
I've started by improving RequestProcessor, so I can migrate
some tasks out of the common processing queue, where it clashes
with UI update posts.
Comment 3 Petr Nejedly 2002-05-14 11:27:03 UTC
I've sped up mime recognition (it could improve DO recognition
by >30%). I still have other things to do in DS layer,
like partially implementing issue 20193.
Comment 4 Petr Nejedly 2002-05-14 11:56:55 UTC
Partially fixed issue 20193, no more tons of FileChangeListeners,
it speds up the file recognition especially for large folders,
as attaching a lot of listeners to a folder is expensive (see issue
20715)
Comment 5 Petr Nejedly 2002-05-14 14:23:07 UTC
There is a problem with incremental updating of the FolderChildren,
example: There are N=200 files in a folder forming M=70 MultiDOs.
Whenever the newly added DataNodes are to displayed, their MultiDO's
checkFiles (in sum 70x, once for each MDO) gets executed and
it evaluates all the files in the folder for each MultiDO,
which means MxN evaluatinos of some FO.

There is a performance fix in place that skips checkFiles whenever
the DO was recognized by FolderList (a flag), but the flag is set
only when the folder is fully recognized.

It means that if we wait for the full result instead of the
incremental parsing, we can slash the folder parsing time
to the similar time it took to display the first partial result.

There is other possibility and that is to wait till some minimal
amount of files is available. 
Comment 6 Petr Nejedly 2002-05-15 15:59:20 UTC
Implemented synchronous folder parsing.
This brings about the shortest time we can achieve with current
architecture.