-
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
infoschema, domain, ddl: fix upper cased charset names #10272
Conversation
/rebuild |
3 similar comments
/rebuild |
/rebuild |
/rebuild |
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
f384e16
to
bf8ad4f
Compare
bf8ad4f
to
5421078
Compare
Codecov Report
@@ Coverage Diff @@
## master #10272 +/- ##
================================================
+ Coverage 77.6568% 77.6723% +0.0154%
================================================
Files 411 411
Lines 85431 85441 +10
================================================
+ Hits 66343 66364 +21
+ Misses 14124 14119 -5
+ Partials 4964 4958 -6 |
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
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
/run-all-tests |
/run-unit-test |
What problem does this PR solve?
This version aims to deal with upper-cased charset name in
TableInfo
stored by previous versions of TiDB.TiDB always supposes that all charsets / collations are lower-cased and try to convert them if they're not. However, the convert is missed in some scenarios, some upper-cased charsets / collations are kept and stored, leading to some potential issues:
What is changed and how it works?
With the help of pingcap/parser#301, a new
TableInfoVersion3
is added asCurrLatestTableInfoVersion
. All tables with version prior toTableInfoVersion3
will do the charset / collation name convert when loaded.Also, pingcap/parser#301 validates all charset / collation names and convert them to lower-case in parser.
Check List
Tests
Code changes
Side effects
Related changes