Skip to content
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

[release-3.0]: config support rocksdb doubly skiplist to optimize reverse-scan #5368

Merged
merged 6 commits into from Sep 9, 2019

Conversation

@Little-Wallace
Copy link
Contributor

commented Aug 30, 2019

Signed-off-by: Little-Wallace bupt2013211450@gmail.com

What have you changed?

I have added one new memtable structure DoublySkipList into Rocksdb, which is similar to
InlineSkipList but optimize performance of Iterator::Prev(), which is used in reversed range query. I add a configuration option to enable this feature.

What is the type of the changes?

Pick one of the following and delete the others:

  • Improvement (a change which is an improvement to an existing feature)

How is the PR tested?

Unit tests
I have also tested this structure in RocksDB repo by unit tests.

Does this PR affect documentation (docs) or should it be mentioned in the release notes?

Yes. Set enable_doubly_skiplist in tikv.conf to enable this feature.

Does this PR affect tidb-ansible?

No

Refer to a related PR or issue link (optional)

You can see the details in this PR: pingcap/rocksdb#116

Signed-off-by: Little-Wallace <bupt2013211450@gmail.com>
@Little-Wallace Little-Wallace changed the title config support rocksdb doubly skiplist to optimize reverse-scan [release-3.0]: config support rocksdb doubly skiplist to optimize reverse-scan Aug 30, 2019
Signed-off-by: Little-Wallace <bupt2013211450@gmail.com>
@5kbpers

This comment has been minimized.

Copy link
Member

commented Aug 30, 2019

/run-all-tests

@Connor1996

This comment has been minimized.

Copy link
Member

commented Sep 2, 2019

merge into master branch first?

@Little-Wallace Little-Wallace changed the base branch from release-3.0 to master Sep 2, 2019
@Little-Wallace Little-Wallace changed the base branch from master to release-3.0 Sep 2, 2019
@zhouqiang-cl

This comment has been minimized.

Copy link
Member

commented Sep 9, 2019

/test

@hicqu
hicqu approved these changes Sep 9, 2019
@zhouqiang-cl

This comment has been minimized.

Copy link
Member

commented Sep 9, 2019

/run-all-tests

@you06

This comment has been minimized.

Copy link
Contributor

commented Sep 9, 2019

/run-integration-cop-push-down-test tidb=release-3.0 pd=release-3.0 tidb-test=pr/885

Signed-off-by: Little-Wallace <bupt2013211450@gmail.com>
fix fmt
Signed-off-by: Little-Wallace <bupt2013211450@gmail.com>
@zhouqiang-cl

This comment has been minimized.

Copy link
Member

commented Sep 9, 2019

/run-all-tests

Copy link
Member

left a comment

LGTM

Copy link
Member

left a comment

LGTM

@sre-bot

This comment has been minimized.

Copy link
Collaborator

commented Sep 9, 2019

/run-all-tests

@sre-bot

This comment has been minimized.

Copy link
Collaborator

commented Sep 9, 2019

@Little-Wallace merge failed.

@zhouqiang-cl

This comment has been minimized.

Copy link
Member

commented Sep 9, 2019

/run-integration-common-test

1 similar comment
@zhouqiang-cl

This comment has been minimized.

Copy link
Member

commented Sep 9, 2019

/run-integration-common-test

@zhouqiang-cl

This comment has been minimized.

Copy link
Member

commented Sep 9, 2019

/run-integration-common-test tidb-test=pr/883

@zhouqiang-cl zhouqiang-cl merged commit a31fea7 into tikv:release-3.0 Sep 9, 2019
5 checks passed
5 checks passed
DCO All commits are signed off!
Details
idc-jenkins-ci-tikv/integration-common-test Jenkins job succeeded.
Details
idc-jenkins-ci-tikv/integration-compatibility-test Jenkins job succeeded.
Details
idc-jenkins-ci-tikv/integration-ddl-test Jenkins job succeeded.
Details
idc-jenkins-ci/test Jenkins job succeeded.
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
8 participants
You can’t perform that action at this time.