mirror of
https://github.com/MariaDB/server.git
synced 2026-04-29 11:45:32 +02:00
Bug #38159: Function parsing problem generates misleading error message
Added a more detailed error message on calling an ambiguous missing function. mysql-test/r/ps.result: Bug #38159: fixed existing tests mysql-test/r/sp-error.result: Bug #38159: test case mysql-test/t/ps.test: Bug #38159: fixed existing tests mysql-test/t/sp-error.test: Bug #38159: test case sql/item_func.cc: Bug #38159: generate more detailed error message sql/share/errmsg.txt: Bug #38159: add a more detailed error message sql/sql_derived.cc: Bug #38159: treat the detailed error message the same way as the generic one sql/sql_lex.cc: Bug #38159: - detect if the token is ambiguous and print the appropriate error. - backport is_lex_native_function() from 5.1 sql/sql_lex.h: Bug #38159: detect if the token is ambiguous and print the appropriate error. sql/sql_yacc.yy: Bug #38159: generate more detailed error message sql/table.cc: Bug #38159: treat the detailed error message the same way as the generic one
This commit is contained in:
parent
f54beb2dcc
commit
80730df7d6
11 changed files with 60 additions and 7 deletions
|
|
@ -265,6 +265,22 @@ bool is_keyword(const char *name, uint len)
|
|||
return get_hash_symbol(name,len,0)!=0;
|
||||
}
|
||||
|
||||
/**
|
||||
Check if name is a sql function
|
||||
|
||||
@param name checked name
|
||||
|
||||
@return is this a lex native function or not
|
||||
@retval 0 name is a function
|
||||
@retval 1 name isn't a function
|
||||
*/
|
||||
|
||||
bool is_lex_native_function(const LEX_STRING *name)
|
||||
{
|
||||
DBUG_ASSERT(name != NULL);
|
||||
return (get_hash_symbol(name->str, (uint) name->length, 1) != 0);
|
||||
}
|
||||
|
||||
/* make a copy of token before ptr and set yytoklen */
|
||||
|
||||
static LEX_STRING get_token(Lex_input_stream *lip, uint skip, uint length)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue