[MDEV-19285] INSTANT ALTER from ascii_general_ci to latin1_general_ci produces corrupt data Created: 2019-04-19 Updated: 2022-04-15 Resolved: 2019-05-16 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Character Sets, Storage Engine - InnoDB |
| Affects Version/s: | 10.4 |
| Fix Version/s: | 10.4.5 |
| Type: | Bug | Priority: | Major |
| Reporter: | Alexander Barkov | Assignee: | Alexander Barkov |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||||||||||
| Description |
|
Copying ALTER from ascii_general_ci to latin1_general_ci may fail in case of 8-bit characters:
Instant ALTER performs such conversion silently, but then CHECK TABLE rerpots corrupted data:
Instant ALTER should be disallowed from ascii_general_ci to xxx_general_ci. |
| Comments |
| Comment by Alexander Barkov [ 2019-04-19 ] | ||||||||||||||
|
A similar problem is repeatable on alter from ascii_general_ci to utf8_general_ci.
Notice, 0xC0 is a not well-formed utf8 string. | ||||||||||||||
| Comment by Alexander Barkov [ 2019-04-19 ] | ||||||||||||||
|
A similar problem is repeatable on alter from ascii_bin to utf8_bin.
Notice, 0xC0 is a not well-formed utf8 string. | ||||||||||||||
| Comment by Alexander Barkov [ 2019-05-16 ] | ||||||||||||||
|
Closed by a join patch with |