mirror of
https://github.com/MariaDB/server.git
synced 2026-04-29 19:55:32 +02:00
Bug #54920 Stored functions are allowed in HANDLER statements,
but broken. Before this patch, it was allowed to use stored functions in HANDLER ... READ statements. The problem was that this functionality was not really supported by the code. Proper locking would for example not be performed, and it was also possible to break replication by having stored functions that performed updates. This patch disallows the use of stored functions in HANDLER ... READ. Any such statement will now give an ER_NOT_SUPPORTED_YET error. This is an incompatible change and should be reflected in the documentation. Test case added to handler_myisam/handler_innodb.test.
This commit is contained in:
parent
bf1d4487fb
commit
f89287cac4
4 changed files with 63 additions and 3 deletions
|
|
@ -13245,6 +13245,13 @@ handler:
|
|||
handler_read_or_scan where_clause opt_limit_clause
|
||||
{
|
||||
Lex->expr_allows_subselect= TRUE;
|
||||
/* Stored functions are not supported for HANDLER READ. */
|
||||
if (Lex->uses_stored_routines())
|
||||
{
|
||||
my_error(ER_NOT_SUPPORTED_YET, MYF(0),
|
||||
"stored functions in HANDLER ... READ");
|
||||
MYSQL_YYABORT;
|
||||
}
|
||||
}
|
||||
;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue