Changes between Version 15 and Version 16 of Ticket #3011
- Timestamp:
- Jan 13, 2009, 2:44:34 PM (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #3011 – Description
v15 v16 1 I t looks to me like a paranoid check, but maybe it prevents a corner case because of some stuff happening asynchronously. I can't really tell. Maybe turn it into an assert which is not compiled in in release mode?1 If you don't have a folder with many files (like 30000+), you can reproduce it by running a query for all files (Alt-F + Enter). I have at least over 58000 files on both partitions and I am still watching the files dripple into the list as of now. The first couple thousands will go in quickly enough, although it could be argued it should be faster. But after 20000 files, it becomes apparent that something somewhere doesn't scale very well, and I am strongly guessing that it's the list insertion in Tracker. The sorting to find the right index is probably binary search based and fast enough, but then I suppose (without having looked at the code), that it updates the vertical position of all the following items. If that's indeed what's happening, one could also mark the position as invalid until encountering the first item with an invalid position (which would result in items with invalid positions starting at some index until the last item). The correct position could then be retrieved once it's needed (when drawing). Maybe there is even more room for optimization in the code. (Now my list contains 66500 entries and the harddrive LED is barely flashing with lots of CPU usage inbetween.)