From: Alexander Barkov Date: May 5 2010 11:14am Subject: bzr commit into mysql-6.0-codebase-bugfixing branch (bar:3868) Bug#51571 List-Archive: http://lists.mysql.com/commits/107494 X-Bug: 51571 Message-Id: <201005051114.o45BEJ6i004805@bar.myoffice.izhnet.ru> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0753850935==" --===============0753850935== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/bar/mysql-bzr/mysql-6.0-codebase-bugfixing/ based on revid:bar@stripped 3868 Alexander Barkov 2010-05-05 [merge] Merging Bug#51571 from mysql-next-bugfixing modified: mysql-test/r/loadxml.result mysql-test/t/loadxml.test sql/item_func.h sql/sql_load.cc === modified file 'mysql-test/r/loadxml.result' --- a/mysql-test/r/loadxml.result 2009-11-11 17:33:59 +0000 +++ b/mysql-test/r/loadxml.result 2010-05-05 11:13:06 +0000 @@ -73,3 +73,23 @@ id text line2 line3 drop table t1; +# +# Bug#51571 load xml infile causes server crash +# +CREATE TABLE t1 (a text, b text); +LOAD XML INFILE '../../std_data/loadxml.dat' INTO TABLE t1 +ROWS IDENTIFIED BY '' (a,@b) SET b=concat('!',@b); +SELECT * FROM t1 ORDER BY a; +a b +1 !b1 +11 !b11 +111 !b111 +112 !b112 & < > " ' &unknown; -- check entities +2 !b2 +212 !b212 +213 !b213 +214 !b214 +215 !b215 +216 !&bb b; +3 !b3 +DROP TABLE t1; === modified file 'mysql-test/t/loadxml.test' --- a/mysql-test/t/loadxml.test 2010-01-28 00:38:13 +0000 +++ b/mysql-test/t/loadxml.test 2010-05-05 11:13:06 +0000 @@ -108,3 +108,11 @@ load xml infile '../../std_data/loadxml2 select * from t1; drop table t1; +--echo # +--echo # Bug#51571 load xml infile causes server crash +--echo # +CREATE TABLE t1 (a text, b text); +LOAD XML INFILE '../../std_data/loadxml.dat' INTO TABLE t1 +ROWS IDENTIFIED BY '' (a,@b) SET b=concat('!',@b); +SELECT * FROM t1 ORDER BY a; +DROP TABLE t1; === modified file 'sql/item_func.h' --- a/sql/item_func.h 2010-04-08 10:50:40 +0000 +++ b/sql/item_func.h 2010-05-05 11:13:06 +0000 @@ -1497,7 +1497,8 @@ class Item_user_var_as_out_param :public LEX_STRING name; user_var_entry *entry; public: - Item_user_var_as_out_param(LEX_STRING a) : name(a) {} + Item_user_var_as_out_param(LEX_STRING a) : name(a) + { set_name(a.str, 0, system_charset_info); } /* We should return something different from FIELD_ITEM here */ enum Type type() const { return STRING_ITEM;} double val_real(); === modified file 'sql/sql_load.cc' --- a/sql/sql_load.cc 2010-04-09 08:22:10 +0000 +++ b/sql/sql_load.cc 2010-05-05 11:13:06 +0000 @@ -695,7 +695,7 @@ static bool write_execute_load_query_log { if (n++) pfields.append(", "); - if (item->name) + if (item->type() == Item::FIELD_ITEM) { pfields.append("`"); pfields.append(item->name); --===============0753850935== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/bar@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: bar@stripped # target_branch: file:///home/bar/mysql-bzr/mysql-6.0-codebase-\ # bugfixing/ # testament_sha1: 285abfc239d50bfd3313b34c7598c0b5b44dc00b # timestamp: 2010-05-05 15:14:19 +0400 # source_branch: file:///home/bar/mysql-bzr/mysql-next-mr-bugfixing/ # base_revision_id: bar@stripped # # Begin bundle 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 --===============0753850935==--