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.
Product Version = NetBeans IDE Dev (Build 200310160100) Operating System = Linux version 2.4.20-18.9 running on i386 Java; VM; Vendor = 1.4.2; Java HotSpot(TM) Client VM 1.4.2-b28; Sun Microsystems Inc. Java Home = /usr/local/java/j2sdk1.4.2/jre System Locale; Encod. = cs_CZ; ISO-8859-2 Home Dir; Current Dir = /usr/local/home/delphym; /usr/local/forte/forte3/NBdev-last/netbeans/bin IDE Install; User Dir = /usr/local/home/delphym/NBdev-last; /usr/local/home/delphym/.netbeans/dev ---------------------------------------------------- I have simple dir structure: `-- validation |-- CVS |-- pakage | |-- CVS | `-- del | |-- CVS | `-- prd | `-- CVS |-- pakage1 | |-- CVS | `-- del | |-- CVS | `-- prd | `-- CVS |-- testdir11201 | `-- CVS |-- testdir11355 | `-- CVS |-- testdir13108 | `-- CVS |-- testdir16873 | `-- CVS |-- testdir17413 | `-- CVS |-- testdir18940 | `-- CVS |-- testdir21201 | `-- CVS |-- testdir26464 | `-- CVS |-- testdir27253 | `-- CVS |-- testdir27542 | `-- CVS |-- testdir28153 | `-- CVS |-- testdir3077 | `-- CVS |-- testdir32315 | `-- CVS |-- testdir35724 | `-- CVS |-- testdir37356 | `-- CVS |-- testdir37858 | `-- CVS |-- testdir39207 | `-- CVS |-- testdir39539 | `-- CVS |-- testdir42238 | `-- CVS |-- testdir43128 | `-- CVS |-- testdir45266 | `-- CVS |-- testdir45990 | `-- CVS |-- testdir46117 | `-- CVS |-- testdir46433 | `-- CVS |-- testdir56494 | `-- CVS |-- testdir58215 | `-- CVS |-- testdir60294 | `-- CVS `-- testdir6338 `-- CVS 70 directories In each testdirXXXXXX was testfile.java So, that's not so huge, isn't it? But I several times (c.10 times) copied the whole working into one of the testdirXXXX so, the hiearchy became 2^n bigger then it used to be:-o And this whole dir structure I Add&Commit into emty local repository. It took quite long time so I went to lunch:-) And after my return, the ide was frozen with OOME and Exception detected in class org.netbeans.modules.vcs.profiles.commands.RecursiveFolderCommand (see the attached snapshot)
Created attachment 11885 [details] snapshot of Exception
And there was at the begining 450 files (including all files from all CVS subdirs)
This problem should be fixed by the cache redesign (issue #32089). Some solution would have to be created for 3.6.
I downgrafing the priority for this bug: it is not probably very common scenario, this I won't push you to fixing separately this problem if it will be solved by introducing your new cache:-)
BUT, there is more general and typical use-case which is clearly recognizable on performance: VCS-Output is significantly slow if you CVS-operate bigger amount of files (>500 files). In fact it is regresion. For more details see the issue #40505
3.6 is out, re-scheduling for promotion D (4.0).
Dependency on cache redesign issue added.
Needs to be tested with the new cache impl., it might be fixed.
My test case: public static void main(String[] args) throws Exception { File root = new File(System.getProperty("java.io.tmpdir") + File.separator + "issue36643"); // NOI18N generate(root, 6); } static void generate(File root, int deep) throws Exception { root.mkdir(); for (int i=0; i<deep; i++) { File dir = new File(root, "dir" + i); File file = new File(root, "file.txt"); file.createNewFile(); generate(dir, deep-1); } } 1957 files Memory consumption went to 124/127 and then back to 24/127. Unfortunately then I was bittem by leak of my anger when I was requested many times for commit message. Fortunately it failed after while. Martin claims it's :local: method specifics problem.
According to the pkuzel's comment this ought to be fixed in 4.1? BWT: the problem with many commit dialogs is already solved (although it's still confusing when one loads the template).