You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +03:00
1. Extend the following CalpontSystemCatalog member functions to set CalpontSystemCatalog::ColType::charsetNumber, after the system catalog update to add charset number to calpontsys.syscolumn in MCOL-5005: CalpontSystemCatalog::lookupOID CalpontSystemCatalog::colType CalpontSystemCatalog::columnRIDs CalpontSystemCatalog::getSchemaInfo 2. Update cpimport to use the CHARSET_INFO object associated with the charset number retrieved from the system catalog, for a dictionary/non-dictionary CHAR/VARCHAR/TEXT column, to truncate long strings that exceed the target column character length. 3. Add MTR test cases.
45 lines
1.8 KiB
Plaintext
45 lines
1.8 KiB
Plaintext
DROP DATABASE IF EXISTS mcol_4931;
|
|
CREATE DATABASE mcol_4931;
|
|
USE mcol_4931;
|
|
CREATE TABLE t1 (
|
|
a VARCHAR(15) collate 'utf8mb4_croatian_ci',
|
|
b CHAR(15) collate 'utf8mb4_croatian_ci',
|
|
c VARCHAR(2),
|
|
d CHAR(2)
|
|
)ENGINE=columnstore default charset=utf8mb4;
|
|
CREATE TABLE t2 (
|
|
a VARCHAR(15) collate 'latin2_hungarian_ci',
|
|
b CHAR(15) collate 'latin2_hungarian_ci',
|
|
c VARCHAR(2),
|
|
d CHAR(2)
|
|
)ENGINE=columnstore default charset=latin2;
|
|
LOAD DATA INFILE "DATADIR/mcol4931_1.txt" IGNORE INTO TABLE t1 charset utf8mb4 FIELDS TERMINATED BY "," ENCLOSED BY '"';;
|
|
Warnings:
|
|
Warning 1265 Data truncated for column 'a' at row 1
|
|
Warning 1265 Data truncated for column 'b' at row 1
|
|
Warning 1265 Data truncated for column 'c' at row 1
|
|
Warning 1265 Data truncated for column 'd' at row 1
|
|
LOAD DATA INFILE "DATADIR/mcol4931_2.txt" IGNORE INTO TABLE t2 charset latin2 FIELDS TERMINATED BY "," ENCLOSED BY '"';;
|
|
Warnings:
|
|
Warning 1265 Data truncated for column 'a' at row 1
|
|
Warning 1265 Data truncated for column 'b' at row 1
|
|
Warning 1265 Data truncated for column 'c' at row 1
|
|
Warning 1265 Data truncated for column 'd' at row 1
|
|
SELECT * FROM t1;
|
|
a b c d
|
|
König-abcd-Stra König-abcd-Stra Kö Kö
|
|
König-abcd-Stra König-abcd-Stra Kö Kö
|
|
SELECT CHAR_LENGTH(a), LENGTHB(a), CHAR_LENGTH(b), LENGTHB(b), CHAR_LENGTH(c), LENGTHB(c), CHAR_LENGTH(d), LENGTHB(d) FROM t1;
|
|
CHAR_LENGTH(a) LENGTHB(a) CHAR_LENGTH(b) LENGTHB(b) CHAR_LENGTH(c) LENGTHB(c) CHAR_LENGTH(d) LENGTHB(d)
|
|
15 16 15 16 2 3 2 3
|
|
15 16 15 16 2 3 2 3
|
|
SELECT * FROM t2;
|
|
a b c d
|
|
abcdefghijklmno abcdefghijklmno ab ab
|
|
abcdefghijklmno abcdefghijklmno ab ab
|
|
SELECT CHAR_LENGTH(a), LENGTHB(a), CHAR_LENGTH(b), LENGTHB(b), CHAR_LENGTH(c), LENGTHB(c), CHAR_LENGTH(d), LENGTHB(d) FROM t2;
|
|
CHAR_LENGTH(a) LENGTHB(a) CHAR_LENGTH(b) LENGTHB(b) CHAR_LENGTH(c) LENGTHB(c) CHAR_LENGTH(d) LENGTHB(d)
|
|
15 15 15 15 2 2 2 2
|
|
15 15 15 15 2 2 2 2
|
|
DROP DATABASE mcol_4931;
|