1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

MDEV-9842 LOAD DATA INFILE does not work well with a TEXT column when using sjis

This commit is contained in:
Alexander Barkov
2016-04-02 00:18:58 +04:00
parent 3fc6a8b832
commit e975cd0ba9
4 changed files with 39 additions and 1 deletions

View File

@ -18730,3 +18730,21 @@ DROP TABLE t1;
#
# End of 10.0 tests
#
#
# Start of 10.2 tests
#
#
# MDEV-9842 LOAD DATA INFILE does not work well with a TEXT column when using sjis
#
CREATE TABLE t1 (a TEXT CHARACTER SET sjis);
LOAD DATA INFILE '../../std_data/loaddata/mdev9842.txt' INTO TABLE t1 CHARACTER SET sjis;
SELECT HEX(a) FROM t1;
HEX(a)
78835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C835C
SELECT a=CONCAT('x', REPEAT(_sjis 0x835C, 200)) FROM t1;
a=CONCAT('x', REPEAT(_sjis 0x835C, 200))
1
DROP TABLE t1;
#
# End of 10.2 tests
#

View File

@ -0,0 +1 @@
x<EFBFBD>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\<5C>\

View File

@ -231,3 +231,21 @@ SET NAMES sjis;
--echo #
--echo # End of 10.0 tests
--echo #
--echo #
--echo # Start of 10.2 tests
--echo #
--echo #
--echo # MDEV-9842 LOAD DATA INFILE does not work well with a TEXT column when using sjis
--echo #
CREATE TABLE t1 (a TEXT CHARACTER SET sjis);
LOAD DATA INFILE '../../std_data/loaddata/mdev9842.txt' INTO TABLE t1 CHARACTER SET sjis;
SELECT HEX(a) FROM t1;
SELECT a=CONCAT('x', REPEAT(_sjis 0x835C, 200)) FROM t1;
DROP TABLE t1;
--echo #
--echo # End of 10.2 tests
--echo #

View File

@ -1492,7 +1492,8 @@ int READ_INFO::read_field()
for (;;)
{
while ( to < end_of_buff)
// Make sure we have enough space for the longest multi-byte character.
while ( to + read_charset->mbmaxlen <= end_of_buff)
{
chr = GET;
if (chr == my_b_EOF)