[MDEV-30695] Refactor case folding data types in Asian collation Created: 2023-02-21 Updated: 2023-04-18 Resolved: 2023-02-21 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Character Sets |
| Fix Version/s: | 10.11.3, 11.0.1, 10.10.4 |
| Type: | Task | Priority: | Major |
| Reporter: | Alexander Barkov | Assignee: | Alexander Barkov |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Description |
|
Case folding tables are stored in the following structures:
The member MY_UNICASE_CHARACTER::sort is not used by the underlying code in Asia collations. This member is only used by Unicode _general_ci collations. For other collations (Asian collations, Unicode UCA collations, Unicode _bin collations) the member MY_UNICASE_CHARACTER::sort only wastes memory. It's good to refactor the code, so those tables do not waste space. In Lets add new data types to store casefolding information:
and change all Asian collations to store casefolding tables using new data types. Note, some or all Unicode collations will be also modified to use new data types, but later under terms of a separate task. |