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.
Summary: | AbstractFileSystem is doing too expensive refreshes which are unnecessary | ||
---|---|---|---|
Product: | platform | Reporter: | Petr Nejedly <pnejedly> |
Component: | Filesystems | Assignee: | rmatous <rmatous> |
Status: | VERIFIED FIXED | ||
Severity: | blocker | CC: | pnejedly, ttran |
Priority: | P1 | Keywords: | PERFORMANCE |
Version: | 3.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | |
Bug Depends on: | |||
Bug Blocks: | 32065 | ||
Attachments: | release35 diff |
Description
Petr Nejedly
2003-03-24 16:10:54 UTC
It is more visible on VCS filesystems as their "refresh" is more expensive. It strongly affects e.g. internal compilation. Fixed in trunk. /cvs/openide/src/org/openide/filesystems/AbstractFileObject.java,v <-- AbstractFileObject.java new revision: 1.86; previous revision: 1.85 /cvs/openide/src/org/openide/filesystems/AbstractFolder.java,v <-- AbstractFolder.java new revision: 1.66; previous revision: 1.65 OK, internal compiler is much faster now e.g. on JavaCVS We should put this into 3.5, it greatly improves usefullnes of internal compiler. Radku, will you ask for review/integration? I've looked at the changes and they seems OK to me. because 3.5 is focused on performance and this one seems to be a significant performance issue, I agree we should try to get the fix in. -> P1 Petr N or someone, please provide some numbers so we can see how the users are affected Created attachment 9562 [details]
release35 diff
Unqualified numbers are ~120s vs. ~60s for compiling openide/src on JavaCVS FS. Exact numbers are hard to take as the variance of the result is quite big (remember, it does a lot of file access). Fix: Avoid to call refresh after new child (FileObject) was created. And directly add new child in parent's map. The patch is OK approved for 3.5 by release coordinator Fixed in release35. |