mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge mysql.com:/extern/mysql/bk/mysql-5.0-runtime
into mysql.com:/extern/mysql/5.0/bug16896/mysql-5.0
This commit is contained in:
@ -1176,3 +1176,6 @@ end|
|
|||||||
call bug15091();
|
call bug15091();
|
||||||
ERROR 42S02: Unknown table 'c' in field list
|
ERROR 42S02: Unknown table 'c' in field list
|
||||||
drop procedure bug15091;
|
drop procedure bug15091;
|
||||||
|
drop function if exists bug16896;
|
||||||
|
create aggregate function bug16896() returns int return 1;
|
||||||
|
ERROR 42000: AGGREGATE is not supported for stored functions
|
||||||
|
@ -1703,6 +1703,17 @@ call bug15091();
|
|||||||
drop procedure bug15091;
|
drop procedure bug15091;
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# BUG#16896: Stored function: unused AGGREGATE-clause in CREATE FUNCTION
|
||||||
|
#
|
||||||
|
--disable_warnings
|
||||||
|
drop function if exists bug16896;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
--error ER_SP_NO_AGGREGATE
|
||||||
|
create aggregate function bug16896() returns int return 1;
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# BUG#NNNN: New bug synopsis
|
# BUG#NNNN: New bug synopsis
|
||||||
#
|
#
|
||||||
@ -1710,3 +1721,4 @@ drop procedure bug15091;
|
|||||||
#drop procedure if exists bugNNNN|
|
#drop procedure if exists bugNNNN|
|
||||||
#--enable_warnings
|
#--enable_warnings
|
||||||
#create procedure bugNNNN...
|
#create procedure bugNNNN...
|
||||||
|
|
||||||
|
@ -5607,3 +5607,5 @@ ER_SP_PROC_TABLE_CORRUPT
|
|||||||
eng "Failed to load routine %s. The table mysql.proc is missing, corrupt, or contains bad data (internal code %d)"
|
eng "Failed to load routine %s. The table mysql.proc is missing, corrupt, or contains bad data (internal code %d)"
|
||||||
ER_SP_WRONG_NAME 42000
|
ER_SP_WRONG_NAME 42000
|
||||||
eng "Incorrect routine name '%-.64s'"
|
eng "Incorrect routine name '%-.64s'"
|
||||||
|
ER_SP_NO_AGGREGATE 42000
|
||||||
|
eng "AGGREGATE is not supported for stored functions"
|
||||||
|
@ -1326,6 +1326,16 @@ create_function_tail:
|
|||||||
LEX *lex= Lex;
|
LEX *lex= Lex;
|
||||||
sp_head *sp;
|
sp_head *sp;
|
||||||
|
|
||||||
|
/*
|
||||||
|
First check if AGGREGATE was used, in that case it's a
|
||||||
|
syntax error.
|
||||||
|
*/
|
||||||
|
if (lex->udf.type == UDFTYPE_AGGREGATE)
|
||||||
|
{
|
||||||
|
my_error(ER_SP_NO_AGGREGATE, MYF(0));
|
||||||
|
YYABORT;
|
||||||
|
}
|
||||||
|
|
||||||
if (lex->sphead)
|
if (lex->sphead)
|
||||||
{
|
{
|
||||||
my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "FUNCTION");
|
my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "FUNCTION");
|
||||||
|
@ -144,6 +144,7 @@ char *metaphon(UDF_INIT *initid, UDF_ARGS *args, char *result,
|
|||||||
my_bool myfunc_double_init(UDF_INIT *, UDF_ARGS *args, char *message);
|
my_bool myfunc_double_init(UDF_INIT *, UDF_ARGS *args, char *message);
|
||||||
double myfunc_double(UDF_INIT *initid, UDF_ARGS *args, char *is_null,
|
double myfunc_double(UDF_INIT *initid, UDF_ARGS *args, char *is_null,
|
||||||
char *error);
|
char *error);
|
||||||
|
my_bool myfunc_int_init(UDF_INIT *initid, UDF_ARGS *args, char *message);
|
||||||
longlong myfunc_int(UDF_INIT *initid, UDF_ARGS *args, char *is_null,
|
longlong myfunc_int(UDF_INIT *initid, UDF_ARGS *args, char *is_null,
|
||||||
char *error);
|
char *error);
|
||||||
my_bool sequence_init(UDF_INIT *initid, UDF_ARGS *args, char *message);
|
my_bool sequence_init(UDF_INIT *initid, UDF_ARGS *args, char *message);
|
||||||
@ -597,6 +598,14 @@ longlong myfunc_int(UDF_INIT *initid, UDF_ARGS *args, char *is_null,
|
|||||||
return val;
|
return val;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
At least one of _init/_deinit is needed unless the server is started
|
||||||
|
with --allow_suspicious_udfs.
|
||||||
|
*/
|
||||||
|
my_bool myfunc_int_init(UDF_INIT *initid, UDF_ARGS *args, char *message)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Simple example of how to get a sequences starting from the first argument
|
Simple example of how to get a sequences starting from the first argument
|
||||||
|
Reference in New Issue
Block a user