-
Notifications
You must be signed in to change notification settings - Fork 467
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
Enable rocksdb read option avoid_unnecessary_blocking_io
to avoid unexpected long latency
#1903
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you!
avoid_unnecessary_blocking_io
to avoid unexpected long latency
Seems this would making purge to background? Just take a quick glance seems this doesn't have some risk? Also should we make this a flag? If this has bug, can we quickly turn it off? |
Seems that speedb also having this. Let's checkin this if other doesn't have any negative views |
yes
add if user don't care iterating with io purge, just dont change it |
Just a non-dynamic flag? 🤔 I think it doesn't have any risks except the implement has bug, so set it hardcode true is also ok |
flag added. let user know this option and make choice |
I prefer enabling this option by default since it may reduce the iterator latency. And it'd be better to hide this configuration in kvrocks.conf, because I think users should not care about this configuration. |
Agree, we can default enable it. But let user know we can disable it if it has bug? |
My thought is to hide this option in kvrocks.conf if we don't expect users to change this unless any users ask about this. What do you think? |
Hiding a configuration option in kvrocks.conf can make maintenance more difficult. I believe we should have a document that lists all hidden options. Simply hiding it without any explanation or documentation does not seem acceptable. |
My point is may overload the configuration file as time goes on. So I'm wondering if we should export every option to users, or only export to them what they should care about. It's good for me to leave as it is. |
Co-authored-by: hulk <[email protected]>
Kudos, SonarCloud Quality Gate passed! 0 Bugs No Coverage information |
LGTM |
see https://github.com/facebook/rocksdb/wiki/IO#avoid-blocking-io