1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-27 18:02:13 +03:00

MDEV-16325 CREATE..SELECT..UNION creates a wrong field type for old varchar

- Adding Type_handler::traditional_merge_field_type()
- Removing real_type_to_type(), field_merge_type()
- Making Type_handler_var_string to merge as VARCHAR
- Additionally, fixing Field_string::print() to add the "/*old*/"
  comment into the data type for the old VARCHAR.
  This is similar to what MDEV-8267 earlier did for old DECIMAL.
- Adding tests
This commit is contained in:
Alexander Barkov
2018-05-30 15:22:58 +04:00
parent d4da8e7c02
commit 3ceb4a54a1
9 changed files with 228 additions and 64 deletions

View File

@ -82,8 +82,8 @@ drop table t1;
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` varbinary(255) DEFAULT NULL,
`b` varchar(255) DEFAULT NULL
`a` varbinary(255)/*old*/ DEFAULT NULL,
`b` varchar(255)/*old*/ DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
select length(a), length(b) from t1;
length(a) length(b)