When I open an image in a directory with >30k other images, Ristretto takes a long time until I can interact with the sidebar in a useful fashion. It appears that the process of finding new files even slows down as more and more files are added to the list on the side, in the beginning it's more than 1000 files per second, in the end, it's less than a hundred files per second. Would it be possible to put a list of placeholders for each image before further processing? Actually measuring some times, it seems that it takes: 5 seconds for the first 10000 images. Another 20 seconds for the next 10000 images. Another 45 seconds for the next 10000 images. This looks a bit quadratic, maybe it could be done in linear time?
Might at least partially depend on bug 11577
(In reply to mirh from comment #1) > Might at least partially depend on bug 11577 In my case, all the files are smaller than 130 KiB.
A very large file or a lot of smaller files - I guess the point is still the same. (and also that exponential thing sounds fishy then)
Created attachment 7563 Images in the file list are now sorted after the list has been populated I believe this patch fixes the issue of loading large numbers of images when the program first starts. Instead of sorting the file list as new items are loaded from the directory, they are prepended, and only sorted (according to the chosen sort method) once the list is populated. I've found a directory of 10k items is now loaded in roughly four seconds regardless of sort method, whereas the same operation varied between 10-30 seconds before the patch, depending on whether the directory was being sorted by filename or date.
-- GitLab Migration Automatic Message -- This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/apps/ristretto/-/issues/20. Please create an account or use an existing account on one of our supported OAuth providers. If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev