Home / APPS DBA / How To Trace Concurrent Programs

How To Trace Concurrent Programs

How To Trace Concurrent Programs

CASE 1 : Concurrent Program Tracing without bind variables

1)   Follow the following navigation to enable logging for Concurrent Program

  1. Goto Sysadmin > Concurrent > Program > Define
  2. Query the concurrent program
  3. Check the trace box to enable trace

2) Execute the concurrent program and note down the request id

 

 

CASE 2: Concurrent Program Tracing with bind variables and waits

1) Note down the following values

  • SQL>SELECT value FROM v$parameter WHERE name = “max_dump_file_size”;
  • SQL>SELECT value FROM v$parameter WHERE name = “timed_statistics”;

2)   Execute the following commands as sysdba

  • SQL>ALTER SYSTEM SET max_dump_file_size = unlimited;
  • SQL>ALTER SYSTEM SET timed_statistics = true;
  • SQL>ALTER SYSTEM SET EVENTS ‘10046 trace name context forever, level 12’;

3)   Execute the concurrent program and note down the request id

4)Turn off tracing the reset the values.

  • SQL>ALTER SYSTEM SET EVENTS ‘10046 trace name context off’;
  • SQL>ALTER SYSTEM SET max_dump_file_size = <value from step 1>;
  • SQL>ALTER SYSTEM SET timed_statistics = <value from step 1>;

 

 

CASE 3: Enabling the trace for a concurrent request for which you donot have privileges to run the concurrent Request.

1)   Now, Run the concurrent program and get the request id .

2)  Get the oracle_process_id for that concurrent request.

SELECT request_id,
oracle_process_id
FROM   fnd_concurrent_requests
WHERE  request_id IN (“xxxxxxx”);

3)   Now get the session details ( SID and Serial ) using value obtained from step 2

col “SID/SERIAL” format a10 col username format a15
col osuser format a15 col program format a40
SELECT s.sid
|| “,”
|| s.serial# “SID/SERIAL”,
s.username,
s.osuser,
s.status,
p.spid       “OS PID”,
s.inst_id,
s.MODULE
FROM   sys.gv_$session s,
sys.gv_$process p
WHERE  s.paddr = p.addr
AND s.inst_id = p.inst_id
AND p.spid = &value_from_step2
ORDER  BY To_number(p.spid);

4)   Execute the following command to enable the trace :

EXECUTE dbms_support.start_trace_in_session (&sid, &serial, binds=>true, waits=>
true);

5)   Collect the trace from udump location and investigate the issue.

 

 Reference Metalink Note: 296559.1 to know more about tracing.

 

 

 

About Syed Saad Ali

With 13 years of experience as a certified and skilled Oracle Database Administrator, I possess the expertise to handle various levels of database maintenance tasks and proficiently perform Oracle updates. Throughout my career, I have honed my analytical abilities, enabling me to swiftly diagnose and resolve issues as they arise. I excel in planning and executing special projects within time-sensitive environments, showcasing exceptional organizational and time management skills. My extensive knowledge encompasses directing, coordinating, and exercising authoritative control over all aspects of planning, organization, and successful project completions. Additionally, I have a strong aptitude for resolving customer relations matters by prioritizing understanding and effective communication. I am adept at interacting with customers, vendors, and management, ensuring seamless communication and fostering positive relationships.

Check Also

OracleEBSConfig

Changing IP Address in an Oracle EBS R12 Environment

Changing IP Address in an Oracle EBS R12 Environment 1. First, Change the IP Address …

Leave a Reply