-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
mockstore: introducing embedded unistore #17156
Conversation
Good job, looking forward to seeing amazing performance improvements. |
Codecov Report
@@ Coverage Diff @@
## master #17156 +/- ##
================================================
- Coverage 79.9908% 79.9547% -0.0361%
================================================
Files 511 517 +6
Lines 139236 141091 +1855
================================================
+ Hits 111376 112809 +1433
- Misses 18895 19319 +424
+ Partials 8965 8963 -2 |
/run-all-tests |
6512d84
to
546b34d
Compare
/run-all-tests |
The default mockstore for testing is still the |
LGTM |
Could you file an issue to reflect the future plan?
|
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.
rest LGTM
err = kvstore.Register("mocktikv", mockstore.MockDriver{}) | ||
err = kvstore.Register("mocktikv", mockstore.MockTiKVDriver{}) | ||
terror.MustNil(err) | ||
err = kvstore.Register("unistore", mockstore.EmbedUnistoreDriver{}) |
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.
maybe we also need to add "unistore" to main.go:119, https://github.com/pingcap/tidb/pull/17156/files#diff-af2c9279ed41f7023f9b6b73cba2d18fR119
/merge |
/run-all-tests |
|
What problem does this PR solve?
Integrating unistore into TiDB, so we don't need to maintain a storage backend for testing.
The unistore backend has much better performance, so you can start a single node TiDB by set
-store=unistore
to check your performance optimizations.What is changed and how it works?
The main work is done in ngaut/unistore#382. TiDB side just needs to wrap the tools provided by unistore to implement the test toolkit's interface.
In order to avoid the impact of the introduced bug on CI, I temporarily retained mocktikv and provided configuration to switch.
Check List
Tests
Release note