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.
This is a followup of issue 122639 (and 162144). While the new implementation uses index to speed up the Go to File action, there are still inefficiencies that could slow down the action for large projects. Here are the steps to reproduce: 1. Create a new Java web application. 2. Create a class p.NewClass in this application 3. Select Navigate -> Go to File and type "N" In the first part of the algorithm, the index correctly retrieves the NewClass.java file, which matches the search criteria. However, in the second part of the algorithm, folders are collected so files are found outside of the source roots. After this phase (as I verified under debugger), allFolders.toString has the following value: "[/Users/petrjiricka/NetBeansProjects/WebApplication29, /Users/petrjiricka/NetBeansProjects/WebApplication29/nbproject, /Users/petrjiricka/NetBeansProjects/WebApplication29/nbproject/private, /Users/petrjiricka/NetBeansProjects/WebApplication29/src, /Users/petrjiricka/NetBeansProjects/WebApplication29/src/conf, /Users/petrjiricka/NetBeansProjects/WebApplication29/src/java, /Users/petrjiricka/NetBeansProjects/WebApplication29/src/java/p]" In the third phase, on all these folders, folder.getData(false) is called, so the algorithm enumerates all the files in folder /Users/petrjiricka/NetBeansProjects/WebApplication29/src/java/p, although these have already been retrieved in the first phase through the index! I expect that all folders which are covered by the index, will not be collected in the second part of the algorithm, and their children will not be enumerated in the third part.
Actually when Andrey explained the algorithm to us I thought he mentioned that the folders under the source roots are *not* gone through in the final phase of the algorithm. Andrey?
Adding Vita to Cc: ...
Of course, the cleanest way to fix this would be to implement indexing outside of source roots per issue 162580, which would simplify the algorithm a lot (and speed it up). But I am not sure if that's doable for 6.7.
Petr, David, I have expected the same algorithm as you described and I was talking with Alexey about it. So I am surprised too. Reassign issue to Alexey who actually implemented this code. Since no functionality is broken and performance not critical downgrade to P3.
Yup, I didn't take into account that sources can be placed not only in root folders. I will update the algorithm.
changeset 26398920070a Reviewed by Andrey
Still not working in beta
Could describe what still not working in beta? Or attach project. -> INCOMPLETE
"Still not working in beta" - Well, AFAICT changeset 26398920070a did not make it to beta. So no, this issue was not fixed in beta. Could you please test this in a dev build?
Ahh, yes, it is not in beta, because it was pushed after beta branch created. But it will go to FCS or beta2.
I assume this one can be marked as fixed, right?
Yes, mark as fixed
I can't see the QA message about daily build. Could you confirm that it is already available for test?
It is available since Apr 20 in development builds
It's in main-golden repository (http://hg.netbeans.org/main-golden/rev/26398920070a) and so it definitely is in daily builds now.