Solved

Pl/sql package procedure reivew/tuning

Posted on 2013-05-30
4
467 Views
Last Modified: 2013-06-19
DB: Oracle 11gR2

Hi, need some assistance, how one can review/tune a 500 lines pl/sql package, have already tried DBMS_PROFILER, but not good, also able to tune each and every sql within the package too, all the sql looks good, but when executed within this 500 lines package, taking more time then expected.

Is there any way to review/tune this whole package, what exactly it is doing and where exactly is the bottleneck.

Looking for some hints/tips or even some guidelines should work too.

Thanks in advance.
0
Comment
Question by:mkhandba
  • 2
4 Comments
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
ID: 39207594
Unfortunately the best way I've found is just adding some debug statements inside the procedure.  Either with dbms_output or at times I create a timing table and insert rows into it as my code runs.

My timing table looks like: create table test_timing(where_am_i varchar2(30), time_stamp systimestamp);

Then as the code executes I insert into it like:
insert into test_timing('Starting run',systimestamp);
commit;

As for tuning the SQL, this is the same way you tune any SQL:  Explain Plan and/or tkprof.
0
 

Author Comment

by:mkhandba
ID: 39207633
Hmmm ... means there is no way/technique to review the execution of a pl/sql package in a whole ... ?

Let's wait for some more ... let's see.
0
 
LVL 76

Accepted Solution

by:
slightwv (䄆 Netminder) earned 250 total points
ID: 39207666
0
 
LVL 15

Assisted Solution

by:Franck Pachot
Franck Pachot earned 250 total points
ID: 39208807
Hi,
If you have Diagnostic Pack you can get the most consuming parts from v$active_session_history
SQL_ID for sql statements (statement in V$SQL)
PLSQL_OBJECT_ID , PLSQL_SUBPROGRAM_ID for pl/sql functions (names in DBA_PROCEDURES)
Regards,
Franck.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Join & Write a Comment

Introduction A previously published article on Experts Exchange ("Joins in Oracle", http://www.experts-exchange.com/Database/Oracle/A_8249-Joins-in-Oracle.html) makes a statement about "Oracle proprietary" joins and mixes the join syntax with gen…
Using SQL Scripts we can save all the SQL queries as files that we use very frequently on our database later point of time. This is one of the feature present under SQL Workshop in Oracle Application Express.
This video shows setup options and the basic steps and syntax for duplicating (cloning) a database from one instance to another. Examples are given for duplicating to the same machine and to different machines
This video shows how to copy an entire tablespace from one database to another database using Transportable Tablespace functionality.

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now