summaryrefslogtreecommitdiff
path: root/mysql-test/t/outfile_loaddata.test
diff options
context:
space:
mode:
authorgshchepa/uchum@gleb.loc <>2007-11-20 20:15:20 +0400
committergshchepa/uchum@gleb.loc <>2007-11-20 20:15:20 +0400
commit351d9f66d329e1f443827b39431c490e9a358c7f (patch)
tree4f93f42481705c3afd38cbab8849361c80133400 /mysql-test/t/outfile_loaddata.test
parent7b38492a4c08c1a9212aa90b36c6192121daa671 (diff)
downloadmariadb-git-351d9f66d329e1f443827b39431c490e9a358c7f.tar.gz
Fixed bug #32533.
8bit escape characters, termination and enclosed characters were silently ignored by SELECT INTO query, but LOAD DATA INFILE algorithm is 8bit-clean, so data was corrupted during encoding.
Diffstat (limited to 'mysql-test/t/outfile_loaddata.test')
-rw-r--r--mysql-test/t/outfile_loaddata.test24
1 files changed, 24 insertions, 0 deletions
diff --git a/mysql-test/t/outfile_loaddata.test b/mysql-test/t/outfile_loaddata.test
index 2f6ac998b3d..2a120871e7d 100644
--- a/mysql-test/t/outfile_loaddata.test
+++ b/mysql-test/t/outfile_loaddata.test
@@ -86,4 +86,28 @@ DROP TABLE t2;
DROP TABLE t1;
+--echo #
+--echo # Bug#32533: SELECT INTO OUTFILE never escapes multibyte character
+--echo #
+
+CREATE TABLE t1 (c1 VARCHAR(256));
+INSERT INTO t1 VALUES (0xC3);
+SELECT HEX(c1) FROM t1;
+
+--let $file=$MYSQLTEST_VARDIR/tmp/bug32533.txt
+
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--eval SELECT * INTO OUTFILE '$file' FIELDS ENCLOSED BY 0xC3 FROM t1
+TRUNCATE t1;
+
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--eval SELECT HEX(LOAD_FILE('$file'))
+
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+--eval LOAD DATA INFILE '$file' INTO TABLE t1 FIELDS ENCLOSED BY 0xC3
+SELECT HEX(c1) FROM t1;
+
+--remove_file $file
+DROP TABLE t1;
+
--echo # End of 5.0 tests.