mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
2e1bfbd2b403ae65ca5844043de7dff18d3dac02
handle them. Problem: CREATE|ALTER EVENT, HANDLER READ, KILL, Partitioning uses `expr` from the parser. This rule comes with all the rings and bells including subqueries. However, these commands are not subquery safe. For this reason there are two fuse checks in the parser. They were checking by command id. CREATE EVENT should forbid subquery is the fix for bug#16394 Events: Crash if schedule contains SELECT The fix has been incorporated as part of the patch for WL#3337 (Event scheduler new architecture). Solution: A new flag was added to LEX command_forbids_subselect. The fuse checks were changed. The commands are responsible to set the value to true whenever they can't handle subselects. sql/sql_lex.cc: initialize the variable sql/sql_lex.h: Add a new flag whether the parser should allow a subselect when parsing. This is temporarily turned off by commands like CREATE|ALTER EVENT, HA_READ, KILL. Could be used by other parts which reuse `expr` rule of the grammar and should not allow subqueries as part of it. sql/sql_yacc.yy: Forbid subselects in some commands in a better way. CREATE|ALTER EVENT, HANDLER READ, KILL, are not subselect safe for parameters and therefore they should be forbidden already in the parser. This patch makes it easier for the developer to add new commands in that sense similar to the mentioned above.
This is a release of MySQL, a dual-license SQL database server. MySQL is brought to you by the MySQL team at MySQL AB. License information can be found in these files: - For GPL (free) distributions, see the COPYING file. - For commercial distributions, see the MySQLEULA.txt file. For further information about MySQL or additional documentation, see: - The latest information about MySQL: http://www.mysql.com - The current MySQL documentation: http://dev.mysql.com/doc Some manual sections of special interest: - If you are migrating from an older version of MySQL, please read the "Upgrading from..." section first! - To see what MySQL can do, take a look at the features section. - For installation instructions, see the Installation chapter. - For future plans, see the TODO appendix. - For the new features/bugfix history, see the News appendix. - For the currently known bugs/misfeatures (known errors) see the problems appendix. - For a list of developers and other contributors, see the Credits appendix. A local copy of the MySQL Reference Manual can be found in the Docs directory in GNU Info format. You can also browse the manual online or download it in any of several formats at the URL given earlier in this file. ************************************************************ IMPORTANT: Bug or error reports should be sent to http://bugs.mysql.com.
Languages
MariaDB\
71.9%
C++
16.2%
C
10.5%
Shell
0.5%
Perl
0.4%
Other
0.3%