diff options
author | unknown <andrey@lmy004.> | 2006-08-04 12:50:49 +0200 |
---|---|---|
committer | unknown <andrey@lmy004.> | 2006-08-04 12:50:49 +0200 |
commit | e60678aef6e5ae7c9ddb03a3ab8ccb68689a9801 (patch) | |
tree | 45a81d7426c9117ebe258ddb02adaabaa04ad2fa /mysql-test/t | |
parent | a13b3c49293f350def614c54a10092dba1f4cdf8 (diff) | |
download | mariadb-git-e60678aef6e5ae7c9ddb03a3ab8ccb68689a9801.tar.gz |
Fix for bug#21416 SP: Recursion level higher than zero needed for non-recursive call
The following procedure was not possible if max_sp_recursion_depth is 0
create procedure show_proc() show create procedure show_proc;
Actually there is no recursive call but the limit is checked.
Solved by temporarily increasing the thread's limit just before the fetch from cache
and decreasing after that.
mysql-test/r/sp.result:
update result
mysql-test/t/sp.test:
Test for bug #21416 SP: Recursion level higher than zero needed for non-recursive call
sql/sp.cc:
Increase the max_sp_recursion_depth temporarily for SHOW CREATE PROCEDURE call.
This call is in fact not recursive but is counted as such. Outcome, it will work
always but if max_sp_recursion_depth is reached we are going to cache one more
sp_head instance.
Diffstat (limited to 'mysql-test/t')
-rw-r--r-- | mysql-test/t/sp.test | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/mysql-test/t/sp.test b/mysql-test/t/sp.test index 99f3bbbbd14..fcf179d3e8f 100644 --- a/mysql-test/t/sp.test +++ b/mysql-test/t/sp.test @@ -5951,6 +5951,16 @@ drop table t3| drop procedure bug15217| # +# BUG#21416: SP: Recursion level higher than zero needed for non-recursive call +# +--disable_warnings +drop procedure if exists bug21416| +--enable_warnings +create procedure bug21416() show create procedure bug21416| +call bug21416()| +drop procedure bug21416| + +# # BUG#NNNN: New bug synopsis # #--disable_warnings |