-
Notifications
You must be signed in to change notification settings - Fork 6.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
Less linear search in DBIter::Seek() when keys are overwritten a lot #1413
Conversation
@IslamAbdelRahman has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator. |
@IslamAbdelRahman @lightmark do you mind review the PR? Thanks! |
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, but let's fix ROCKSDB_LITE before landing
|
||
// Check that memtable wasn't flushed. | ||
std::string val; | ||
ASSERT_TRUE(db_->GetProperty("rocksdb.num-files-at-level0", &val)); |
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.
This call is not supported under ROCKSDB_LITE
we need to
#ifndef ROCKSDB_LITE
#endif
This test
looks like now we need to rebase as well |
@al13n321 updated the pull request - view changes - changes since last import |
@al13n321 updated the pull request - view changes - changes since last import |
Rebased and fixed ROCKSDB_LITE build. |
Are the two test failures in travis legit? One of them also appears in #1553 , and other recent PRs have test failures. |
Summary: The new unit test reproduces a regression bug introduced in facebook#1413
FYI, there appears to be a bug in it, which can be reproduced with siying@5023188 |
In one deployment we saw high latencies (presumably from slow iterator operations) and a lot of CPU time reported by perf with this stack:
I think what's happening is:
CC @IslamAbdelRahman