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.
Build: NetBeans IDE 7.3 (Build 201302132200) VM: Java HotSpot(TM) 64-Bit Server VM, 23.21-b01, Java(TM) SE Runtime Environment, 1.7.0_21-b11 OS: Windows 7 User Comments: kosmonaFFFt: Just code... GUEST: Project properties Maximum slowness yet reported was 42205 ms, average is 16120
Created attachment 133807 [details] nps snapshot
Created attachment 135661 [details] nps snapshot Slow
The bug contains slow-code-completion reports caused by java.io.WinNTFileSystem.getBooleanAttributes (or similar I/O methods). I'm afraid that this cannot be fixed. We cannot make WinNTFileSystem faster. Tomas, please, if you think it's possible to fix this somehow, in Parsing infrastructure or in Filesystems, please reopen this bug. Thank you.
Is it really a filesystem issue? I have a SSD and got this problem. Please look at this report: http://statistics.netbeans.org/analytics/detail.do?id=199564
I agree, I have an extremely fast system, so I don't see how this can be a hardware or Windows issue. 42 seconds to open a file is ridiculous, and when I monitor my IO its not even under load.
(In reply to comment #4) > Is it really a filesystem issue? I have a SSD and got this problem. Very probably yes. Most time is spent in java.io.WinNTFileSystem.getBooleanAttributes. All reports come from Windows OS. Your hard drive can be fast, but the filesystem (NTFS) is quite slow sometimes. (In reply to comment #5) > 42 seconds to open a file is ridiculous, and when I monitor my IO its not even > under load. But the problem that this bug describes is slow code completion, not opening of a file. Are we talking about the same issue?
Why does code completion require accessing NTFS?
(In reply to comment #7) > Why does code completion require accessing NTFS? It needs to know contents of other files in the project, so some I/O is sometimes necessary. Tomas, please, if you can provide a better answer, feel free to correct me.
Right, the code completion is always invoke in some scope (see JLS 6.3.1) the referenced type(s) in the scope may need to be loaded from class files (either from jar or folders).