-
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
codec: Don't convert set or enum datum to float64 when encoding them (#32308) #32353
codec: Don't convert set or enum datum to float64 when encoding them (#32308) #32353
Conversation
Signed-off-by: ti-srebot <ti-srebot@pingcap.com>
[REVIEW NOTIFICATION] This pull request has been approved by:
To complete the pull request process, please ask the reviewers in the list to review by filling The full list of commands accepted by this bot can be found here. Reviewer can indicate their review by submitting an approval review. |
/run-all-tests |
Signed-off-by: ekexium <ekexium@gmail.com>
b602510
to
4577202
Compare
/run-check_dev |
1 similar comment
/run-check_dev |
Signed-off-by: ekexium <ekexium@gmail.com>
/run-check_dev |
1 similar comment
/run-check_dev |
/run-check_dev |
PTAL @cfzjywxk @MyonKeminta |
/run-unit-test |
/run-build |
/run-check_dev2 |
/run-check_dev_2 |
/run-all-tests |
/run-unit-test |
/run-check_dev |
/run-unit-test |
1 similar comment
/run-unit-test |
Code Coverage Details: https://codecov.io/github/pingcap/tidb/commit/2a274885c588aa6870892deed56b0105b5cb2069 |
/merge |
This pull request has been accepted and is ready to merge. Commit hash: c8a7f71
|
/run-mysql-test |
/run-mysql-test |
cherry-pick #32308 to release-5.2
You can switch your code base to this Pull Request by using git-extras:
# In tidb repo: git pr https://github.com/pingcap/tidb/pull/32353
After apply modifications, you can push your change to this PR via:
Signed-off-by: ekexium ekexium@gmail.com
What problem does this PR solve?
Issue Number: close #32302
Problem Summary:
When a enum or a set datum is encoded, it's uint64 value is converted to float64 and then converted back to uint64, resulting in the loss of lower bits.
What is changed and how it works?
Use the original
Value
, don't convert.Check List
Tests
Side effects
Documentation
Release note