Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/server/mysql/mysql-test/t/ |
Upload File : |
# Fibonacci, for recursion test. (Yet Another Numerical series :) # Split from main.sp due to problems reported in Bug#15866 --disable_warnings drop table if exists t3; --enable_warnings create table t3 ( f bigint unsigned not null ); # We deliberately do it the awkward way, fetching the last two # values from the table, in order to exercise various statements # and table accesses at each turn. --disable_warnings drop procedure if exists fib; --enable_warnings # Now for multiple statements... delimiter |; create procedure fib(n int unsigned) begin if n > 1 then 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; 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| # Enable recursion set @@max_sp_recursion_depth= 20| insert into t3 values (0), (1)| # 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| drop table t3| drop procedure fib| set @@max_sp_recursion_depth= 0|