#At file:///export/home/tmp/mysql/pe/ based on
revid:joro@stripped
3424 Bernt M. Johnsen 2009-07-03 [merge]
Prepare for push
modified:
mysql-test/r/sp-fib.result
mysql-test/t/sp-fib.test
=== modified file 'mysql-test/r/sp-fib.result'
--- a/mysql-test/r/sp-fib.result 2009-06-04 11:53:15 +0000
+++ b/mysql-test/r/sp-fib.result 2009-07-03 08:23:16 +0000
@@ -10,24 +10,17 @@ declare c cursor for select f from t3 or
open c;
fetch c into y;
fetch c into x;
-close c;
insert into t3 values (x+y);
call fib(n-1);
+## Close the cursor AFTER the recursion to ensure that the stack
+## frame is somewhat intact.
+close c;
end;
end if;
end|
set @@max_sp_recursion_depth= 20|
insert into t3 values (0), (1)|
-call fib(3)|
-select * from t3 order by f asc|
-f
-0
-1
-1
-2
-truncate table t3|
-insert into t3 values (0), (1)|
-call fib(10)|
+call fib(4)|
select * from t3 order by f asc|
f
0
@@ -35,12 +28,6 @@ f
1
2
3
-5
-8
-13
-21
-34
-55
drop table t3|
drop procedure fib|
set @@max_sp_recursion_depth= 0|
=== modified file 'mysql-test/t/sp-fib.test'
--- a/mysql-test/t/sp-fib.test 2009-06-04 11:53:15 +0000
+++ b/mysql-test/t/sp-fib.test 2009-07-03 08:23:16 +0000
@@ -22,13 +22,14 @@ begin
begin
declare x, y bigint unsigned;
declare c cursor for select f from t3 order by f desc limit 2;
-
open c;
fetch c into y;
fetch c into x;
- close c;
insert into t3 values (x+y);
call fib(n-1);
+ ## Close the cursor AFTER the recursion to ensure that the stack
+ ## frame is somewhat intact.
+ close c;
end;
end if;
end|
@@ -36,24 +37,17 @@ end|
# Enable recursion
set @@max_sp_recursion_depth= 20|
-# Minimum test: recursion of 3 levels
-
insert into t3 values (0), (1)|
-call fib(3)|
+# The small number of recursion levels is intentional.
+# We need to avoid
+# Bug#15866 main.sp fails (thread stack limit
+# insufficient for recursive call "fib(20)")
+# which affects some platforms.
+call fib(4)|
select * from t3 order by f asc|
-truncate table t3|
-
-# The original test, 20 levels, ran into memory limits on some machines
-# and builds. Try 10 instead...
-
-insert into t3 values (0), (1)|
-
-call fib(10)|
-
-select * from t3 order by f asc|
drop table t3|
drop procedure fib|
set @@max_sp_recursion_depth= 0|
Attachment: [text/bzr-bundle] bzr/bernt.johnsen@sun.com-20090703082848-ac0x906mljzc6os9.bundle
| Thread |
|---|
| • bzr commit into mysql-pe branch (bernt.johnsen:3424) | Bernt M. Johnsen | 3 Jul 2009 |