-
Notifications
You must be signed in to change notification settings - Fork 164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
search_threads_rebuild_limit sane default #1518
Comments
You're probably right but I wouldn't know what default to take. This very much depends on the setup and user preferences. For me, 1000 and infinite is the same as I have virtually no threads with more than 100 messages. |
This doesn't iterate over messages in a thread, it iterates over threads in a search buffer. While not an ideal situation, it's not uncommon to have thousands of emails in an inbox and this causes very long UI blocking. |
Another thought is that a subtle UI notification could let the user know why the UI is blocking and point them toward this setting. Folks with low amounts of email and/or fast enough processors might not even notice the notification. |
(I personally had to |
Yes, these are great suggestions!
P
|
Resolve pazz#1518. The problem that search_threads_rebuild_limit tries to solve is UI responsiveness, so the relevant thing to limit is time, not loops. Next steps if this approach is accepted: - Must: Deprecate search_threads_rebuild_limit -- Has a process been developed for option deprecation/removal? - Maybe: Add a configuration option for the timeout. Personally I don't think this is necessary because unlike the previous approach this is not relative to the user's processor and inbox size. It's always something that can be added if a need arises. - Maybe: Execute consume_pipe_until in a separate thread, sleep for the timeout, and then kill the thread. This would eliminate the wasteful clock checking every loop but I'm doubtful it's actually more performant.
I see the same problem here, some search take really long to display. I think is even more serious having a lot of encrypted email, it does try to decrypt it to display the search buffer, and decrypting email is not always fast.
Thanks @ryneeverett to start the work on that. |
I was wrong, the thing that improved the situation for me was to remove the hook I use to auto-refresh every buffer I switch to. Refreshing keeps being pretty slow, even with search_threads_rebuild_limit set to 1. I'm trying to figure out where this slowness comes from. But I amazed how |
I found out the source of my slowness. If I set Anyway I guess my problem is not related to the topic of this issue, sorry for the noise here. I opened an issue for it #1520 |
Resolve pazz#1518. The problem that search_threads_rebuild_limit tries to solve is UI responsiveness, so the relevant thing to limit is time, not loops. Next steps if this approach is accepted: - Must: Deprecate search_threads_rebuild_limit -- Has a process been developed for option deprecation/removal? - Maybe: Add a configuration option for the timeout. Personally I don't think this is necessary because unlike the previous approach this is not relative to the user's processor and inbox size. It's always something that can be added if a need arises. - Maybe: Execute consume_pipe_until in a separate thread, sleep for the timeout, and then kill the thread. This would eliminate the wasteful clock checking every loop but I'm doubtful it's actually more performant.
Resolve pazz#1518. The problem that search_threads_rebuild_limit tries to solve is UI responsiveness, so the relevant thing to limit is time, not loops. Next steps if this approach is accepted: - Must: Deprecate search_threads_rebuild_limit -- Has a process been developed for option deprecation/removal? - Maybe: Add a configuration option for the timeout. Personally I don't think this is necessary because unlike the previous approach this is not relative to the user's processor and inbox size. It's always something that can be added if a need arises. - Maybe: Execute consume_pipe_until in a separate thread, sleep for the timeout, and then kill the thread. This would eliminate the wasteful clock checking every loop but I'm doubtful it's actually more performant.
Describe the bug
The default search_threads_rebuild_limit introduced in #1499 is infinite which "can be very slow in searches that yield thousands of results".
I don't much care what the limit is but infinite can't be a reasonable default. Maybe 1000?
Software Versions
To Reproduce
Steps to reproduce the behaviour:
The text was updated successfully, but these errors were encountered: