[ 
https://issues.apache.org/jira/browse/NETBEANS-6504?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Neil C Smith closed NETBEANS-6504.
----------------------------------
    Resolution: Invalid

https://issues.apache.org/jira/projects/NETBEANS/issues/NETBEANS-6470

> java code completion slow - poor algorithm choice
> -------------------------------------------------
>
>                 Key: NETBEANS-6504
>                 URL: https://issues.apache.org/jira/browse/NETBEANS-6504
>             Project: NetBeans
>          Issue Type: Bug
>          Components: cnd - Code Completion
>    Affects Versions: 13
>         Environment: gentoo linux, slackware64-current.  btrfs and jfs.  
> openjdk18, 32GB RAM, 1TB NVME SSD PCI3x4.
> i do not believe this is related to the other bug reports of slow completion 
> which seem to be platform specific (ntfs).
>  
>            Reporter: notzed
>            Priority: Major
>         Attachments: slow-complete-full.patch, slow-complete-simple.patch
>
>
> I have a class with a mere 3000 constants and it takes a few hundred 
> milliseconds to show and (it seems to run twice?) delete the completion popup 
> when these constants are imported using a wildcard static import.  This makes 
> editing extremely tedious and heavily drains a laptop battery.
> I tracked it down to ElementUtilities.isHidden() invoked from 
> getLocalMembersAndVars() using an inefficient algorithm to filter results. 
> Most of the time time is spent in in toString() via Name::compareContents().
> Perhaps there's a reason it isn't used in this case but addIfNotHidden() 
> seems to have been written to address this performance issue but is only used 
> in one of the methods which callls isHidden().
> I've attached a couple of patches.  One just changes getLocalMembersAndVars() 
> to use addIfNotHidden(), the second is more complete and changes all uses of 
> isHidden() to use addIfNotHidden() in a consistent way and also removes the 
> redundant name comparison in the inner loop.
> I'm sorry, i'm not sure how to trigger all code paths to test the patches.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to