Categories:
.NET (961)
C (387)
C++ (185)
CSS (84)
DBA (8)
General (31)
HTML (48)
Java (641)
JavaScript (220)
JSP (109)
JUnit (31)
MySQL (297)
Networking (10)
Oracle (562)
Perl (48)
Perl (9)
PHP (259)
PL/SQL (140)
RSS (51)
Software QA (28)
SQL Server (5)
Struts (20)
Unix (2)
Windows (3)
XHTML (199)
XML (59)
Other Resources:
What Happens If Recursive Calls Get Out of Control
What Happens If Recursive Calls Get Out of Control? - Oracle DBA FAQ - Creating Your Own PL/SQL Procedures and Functions
✍: FYIcenter.com
What happens if your code has bug on recursive procedure calls, which causes an infinite number nested procedure calls? The answer is so good. Oracle server seems to offer no protection calling stack limit. The script below shows you a badly coded recursive procedure. If you run it on an Oracle 10g XE server on Windows, your server will out of control and keep using virtual memory to satisfy the growing calling stack. You have to reboot your server to control back.
SQL> CREATE OR REPLACE PROCEDURE STACK_TEST AS 2 --Warning: do not run this procedure on your server 3 PROCEDURE STACK AS 4 BEGIN 5 STACK; 6 END; 7 BEGIN 8 STACK; 9 END; 10 / SQL> EXECUTE STACK_TEST; (your server keep running with 100% CPU and memory usage)
2007-04-25, 4936👍, 0💬
Popular Posts:
What is difference between custom JSP tags and JavaBeans? Custom JSP tag is a tag you defined. You d...
What is application domain? Explain. An application domain is the CLR equivalent of an operation sys...
What are the standard ways of parsing XML document? XML parser sits in between the XML document and ...
Can two catch blocks be executed? No, once the proper catch section is executed the control goes fin...
What Happens to Indexes If You Drop a Table? - Oracle DBA FAQ - Managing Oracle Table Indexes If you...