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 56975 - Lot of time on startup spent reading CVS/Entries
Summary: Lot of time on startup spent reading CVS/Entries
Status: RESOLVED WONTFIX
Alias: None
Product: obsolete
Classification: Unclassified
Component: vcscore (show other bugs)
Version: 4.x
Hardware: All All
: P3 blocker (vote)
Assignee: issues@obsolete
URL:
Keywords: PERFORMANCE
Depends on:
Blocks:
 
Reported: 2005-03-25 09:55 UTC by Antonin Nebuzelsky
Modified: 2005-04-01 08:49 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
OptimizeIt screenshot (93.21 KB, image/png)
2005-03-25 09:57 UTC, Antonin Nebuzelsky
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Antonin Nebuzelsky 2005-03-25 09:55:27 UTC
Profiling of startup with a big amount of projects open (all of nbbuild/misc)
and CVS filesystem mounted revealed that up to 20% of the time is spent reading
CVS/Entries when constructing children of various packages. See the attached
screenshot of OptimizeIt window showing the call path

VcsFileSystem.children() -> VcsFileSystem.childrenWithTurbo() -> ...
-> CvsFileAttributeProvider.folderListing() -> BufferedReader.readLine()

Printing out the paths for the read files and counting them has shown that the
effectiveness of the Turbo chache was around 91%. Only 9% of files were read
more than once. Which is good.

Also the used construct BufferedReader -> FileReader seems to be the most
effective way of reading Entries files.

Do You have any idea how we could eliminate these extra 20% of startup?
Comment 1 Antonin Nebuzelsky 2005-03-25 09:57:53 UTC
Created attachment 21130 [details]
OptimizeIt screenshot
Comment 2 Martin Entlicher 2005-03-29 12:05:30 UTC
It's too late to do anything about it. This is just how the file status
infrastructure works.
This might be changed in the future, if we get rid of virtual files. Then we'll
not read CVS/Entries in VcsFileSystem.children() at all and the performance of
children should be identical to LocalFileSystem.
Comment 3 _ pkuzel 2005-04-01 08:49:01 UTC
WONTFIX virtual files will be removed in next generation of CVS support. No
future fixing of current implementtaion is planned.