I believe the filterFunction goes over each item separately and treats each item as an Object. So if you had 900k records, it should be a consistent (slow) speed for each key-press. The more logic is in your filterFunction the more compounded the effects you should see in the speed (slower with more logic).
So if I can imagine sort of what you might be working with, I can see two things that might help. 1. The user should be able to keep typing without the list being completely updated (filtering not completed). 2a. A way to cancel the current filtering process when a user presses a new key to start a new filter and not finish the old one. or 2b. The filtering shouldn't start until the user pauses their typing for a set amount time before attempting to filter and produce a list. This could save on wasted processing until the user is looking for a suggestion. Ultimately indexing would be more efficient or maybe breaking the giant list down into multiple smaller (alphabet styled) lists to improve on speed. Either way maybe this email will get some other ideas going from other people. -Mark On Sun, Mar 31, 2013 at 9:40 AM, Nitin Gopi <nitin.g...@gmail.com> wrote: > I have a autosuggest library which I have been using in my project. I now > have a textinput where I have to use this library. But this time the input > has around 900,000 records. i.e, an xml having 900,000 nodes. When I used > it with the component, it works but it has become slow probably because of > filtering of the xmllistcollection on each key press. On each key press it > takes 2-3 sec for refreshing. Is there a way to speed up the process? > I tested this xml on the local machine. > > -- > You can only depend on yourself. The cavalry ain't coming. >