From: Martin Hansson Date: September 7 2009 12:46pm Subject: bzr commit into mysql-pe branch (martin.hansson:3586) Bug#46259 List-Archive: http://lists.mysql.com/commits/82586 X-Bug: 46259 Message-Id: <200909071247.n87ClgjE011692@riff-raff> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1594106836==" --===============1594106836== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///data0/martin/bzr/bug46259/6.0bt/ based on revid:li-bing.song@stripped 3586 Martin Hansson 2009-09-07 [merge] Bug#46259: Merge modified: mysql-test/r/udf.result mysql-test/t/udf.test sql/sql_yacc.yy === modified file 'mysql-test/r/udf.result' --- a/mysql-test/r/udf.result 2009-05-15 13:45:06 +0000 +++ b/mysql-test/r/udf.result 2009-09-07 12:46:14 +0000 @@ -438,4 +438,20 @@ ERROR 3D000: No database selected drop procedure no_such_proc; ERROR 3D000: No database selected use test; +# +# Bug#46259: 5.0.83 -> 5.1.36, query doesn't work +# +CREATE TABLE t1 ( a INT ); +INSERT INTO t1 VALUES (1), (2), (3); +SELECT IF( a = 1, a, a ) AS `b` FROM t1 ORDER BY field( `b` + 1, 1 ); +b +1 +2 +3 +SELECT IF( a = 1, a, a ) AS `b` FROM t1 ORDER BY field( `b`, 1 ); +b +2 +3 +1 +DROP TABLE t1; End of 5.0 tests. === modified file 'mysql-test/t/udf.test' --- a/mysql-test/t/udf.test 2008-04-01 15:19:16 +0000 +++ b/mysql-test/t/udf.test 2009-09-07 12:46:14 +0000 @@ -504,5 +504,16 @@ drop procedure no_such_proc; use test; +--echo # +--echo # Bug#46259: 5.0.83 -> 5.1.36, query doesn't work +--echo # +CREATE TABLE t1 ( a INT ); + +INSERT INTO t1 VALUES (1), (2), (3); + +SELECT IF( a = 1, a, a ) AS `b` FROM t1 ORDER BY field( `b` + 1, 1 ); +SELECT IF( a = 1, a, a ) AS `b` FROM t1 ORDER BY field( `b`, 1 ); + +DROP TABLE t1; --echo End of 5.0 tests. === modified file 'sql/sql_yacc.yy' --- a/sql/sql_yacc.yy 2009-08-31 20:25:11 +0000 +++ b/sql/sql_yacc.yy 2009-09-07 12:46:14 +0000 @@ -8736,7 +8736,13 @@ udf_expr: $2->is_autogenerated_name= FALSE; $2->set_name($4.str, $4.length, system_charset_info); } - else + /* + A field has to have its proper name in order for name + resolution to work, something we are only guaranteed if we + parse it out. If we hijack the input stream with + remember_name we may get quoted or escaped names. + */ + else if ($2->type() != Item::FIELD_ITEM) $2->set_name($1, (uint) ($3 - $1), YYTHD->charset()); $$= $2; } --===============1594106836== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/martin.hansson@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: martin.hansson@stripped # target_branch: file:///data0/martin/bzr/bug46259/6.0bt/ # testament_sha1: 7bb645f26fafe2b0d6c313e849e12de77cc95c15 # timestamp: 2009-09-07 14:46:42 +0200 # source_branch: file:///data0/martin/bzr/bug46259/5.1bt-gca/ # base_revision_id: li-bing.song@stripped\ # 1e15n147gn5b81mx # # Begin bundle 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 ARpvKDSXI0HHcVH+hdyRThQkNvmcngA= --===============1594106836==--