-
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
*: remove DirtyDB
and DirtyTable
to reduce memory usage
#19042
Conversation
Is there any test report? |
5ffd88c
to
105c4cb
Compare
/run-all-tests |
LGTM |
tk.MustExec("drop table if exists t;") | ||
tk.MustExec("create table t(a int primary key, b int);") | ||
tk.MustExec("begin") | ||
for i := 2; i < 100000; i++ { |
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 is a bench test? so much data may slow the CI.
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.
A correctness test. If the snapshot getter reads the newly added key, the result of this SQL will not empty. The first prototype of this PR doesn't implement snapshot getter, and it fails to pass this test.
} | ||
tk.MustExec("commit;") | ||
|
||
tk.MustExec("set tidb_distsql_scan_concurrency = 1;") |
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.
Why set those concurrency variables?
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.
To slow down the execution, otherwise, the concurrent scanner cannot scan the updated rows.
This SQL is a special case, tries to update handle + 1000
when reading headle
. If the executor is slow enough, it can read some dirty data.
/run-all-tests |
No release note, Please follow https://github.com/pingcap/community/blob/master/contributors/release-note-checker.md |
LGTM |
/merge |
Your auto merge job has been accepted, waiting for:
|
/rebuild |
/run-all-tests |
@bobotu merge failed. |
/run-check_dev_2 |
Do we need to pick this to v4.0? |
What problem does this PR solve?
UnionScan
only need to check whether key already exists inMemBuffer
beforeUnionScan
started. We can directly useMemBuffer
to provide this information.Check List
Tests
Release note