-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
rocksdb: add key order check and turn off force-consistency-checks #8788
Conversation
Signed-off-by: Yi Wu <[email protected]>
Did this configuration actually prevent corruption or just reduce it? |
@gregwebs it does not prevent corruption, but it can fail TiKV when corruption is detected and prevent the corruption from propagate. |
Signed-off-by: Yi Wu <[email protected]>
Can we print a warning if the kernel version is newer? In the warning we can state that this can be configured. |
we are adding a check to detect the corruption in a better way: tikv/rocksdb#195 and we expected we will get a fix from upstream soon. |
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. Would you mind updating rust-rocksdb to include tikv/rust-rocksdb#546 by the way
Signed-off-by: Yi Wu <[email protected]>
done |
Signed-off-by: Yi Wu <[email protected]>
/merge |
/run-all-tests |
Signed-off-by: ti-srebot <[email protected]>
cherry pick to release-4.0 in PR #8823 |
…ikv#8788) Signed-off-by: Yi Wu <[email protected]> Signed-off-by: Connor <[email protected]>
#8788) (#9029) Signed-off-by: Yi Wu <[email protected]> Signed-off-by: Connor <[email protected]>
Signed-off-by: Yi Wu [email protected]
What problem does this PR solve?
Problem Summary: The
force-consistency-checks
was set by default to investigate #8243 and prevent it from corrupt data further. However, the config add significant latency to writes (up to hundreds of ms) by holding global mutex. Despite effort in #8519 to reduce its performance impact, we still see it hurt performance in cases. Now that we learned the root cause of #8243, let's disable it.What is changed and how it works?
What's Changed: disable
force-consistency-checks
Also update rocksdb to include key order check:
Related changes
previous effort to optimize the config's performance: #8243
Check List
Tests: CI
Side effects: For user vulnerable to #8243 (with newer kernel version, >= 4.15, depend on distribution), without
force-consistency-checks
it may cause data corruption.Release note
force-consistency-checks
by default to improve performance.