From: Date: December 19 2006 1:32pm Subject: bk commit into 5.0 tree (anozdrin:1.2320) BUG#24293 List-Archive: http://lists.mysql.com/commits/17155 X-Bug: 24293 Message-Id: <20061219123207.C08A81FC93@alik.opbmk> Below is the list of changes that have just been committed into a local 5.0 repository of alik. When alik does a push these changes will be propagated to the main repository and, within 24 hours after the push, to the public repository. For information on how to access the public repository see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html ChangeSet@stripped, 2006-12-19 15:32:02+03:00, anozdrin@alik. +3 -0 Fix for BUG#24293: '\Z' token is not handled correctly in views. If SELECT-part of CREATE VIEW statement contains '\Z', it is not handled correctly. The problem was in String::print(). Symbol with code 032 (26) is replaced with '\z', which is not supported by the lexer. The fix is to replace the symbol with '\Z'. mysql-test/r/view.result@stripped, 2006-12-19 15:32:00+03:00, anozdrin@alik. +9 -0 Update result file. mysql-test/t/view.test@stripped, 2006-12-19 15:32:01+03:00, anozdrin@alik. +15 -0 Add test case for BUG#24293. sql/sql_string.cc@stripped, 2006-12-19 15:32:01+03:00, anozdrin@alik. +2 -2 We should replace 032 with \Z, since lexer does not understand \z. # This is a BitKeeper patch. What follows are the unified diffs for the # set of deltas contained in the patch. The rest of the patch, the part # that BitKeeper cares about, is below these diffs. # User: anozdrin # Host: alik. # Root: /mnt/raid/alik/MySQL/devel/5.0-rt-bug24293 --- 1.94/sql/sql_string.cc 2006-12-19 15:32:07 +03:00 +++ 1.95/sql/sql_string.cc 2006-12-19 15:32:07 +03:00 @@ -1033,8 +1033,8 @@ void String::print(String *str) case '\r': str->append(STRING_WITH_LEN("\\r")); break; - case 26: //Ctrl-Z - str->append(STRING_WITH_LEN("\\z")); + case '\032': // Ctrl-Z + str->append(STRING_WITH_LEN("\\Z")); break; default: str->append(c); --- 1.184/mysql-test/r/view.result 2006-12-19 15:32:07 +03:00 +++ 1.185/mysql-test/r/view.result 2006-12-19 15:32:07 +03:00 @@ -3014,4 +3014,13 @@ i j 6 3 DROP VIEW v1, v2; DROP TABLE t1; +DROP VIEW IF EXISTS v1; +CREATE VIEW v1 AS SELECT 'The\ZEnd'; +SELECT * FROM v1; +TheEnd +TheEnd +SHOW CREATE VIEW v1; +View Create View +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select _latin1'The\ZEnd' AS `TheEnd` +DROP VIEW v1; End of 5.0 tests. --- 1.170/mysql-test/t/view.test 2006-12-19 15:32:07 +03:00 +++ 1.171/mysql-test/t/view.test 2006-12-19 15:32:07 +03:00 @@ -2960,4 +2960,19 @@ DROP VIEW v1, v2; DROP TABLE t1; +# +# BUG#24293: '\Z' token is not handled correctly in views +# + +--disable_warnings +DROP VIEW IF EXISTS v1; +--enable_warnings + +CREATE VIEW v1 AS SELECT 'The\ZEnd'; +SELECT * FROM v1; + +SHOW CREATE VIEW v1; + +DROP VIEW v1; + --echo End of 5.0 tests.