Tuesday, May 2, 2017

Terminate Runway Process Of Cancel Concurrent Request

Terminate Runway Process Of Cancel Concurrent Request


Even after cancel concurrent request, Resource related concurrent request process may not be released such processes are called RUNWAY processes. So we need to manually kill the processes from database.

Concurrent request id:

Find OS Process id:

In my case: Request_id=32565148

select a.request_id, d.sid, d.serial# ,d.osuser,d.process , c.spid ,d.inst_id from apps.fnd_concurrent_requests a, apps.fnd_concurrent_processes b, gv$process c, gv$session d where a.controlling_manager = b.concurrent_process_id and c.pid = b.oracle_process_id
and b.session_id=d.audsid and a.request_id = 32565148 and a.phase_code = 'R';

Output:

REQUEST_ID SID #SERIAL OSUSER PROCESS SPID INST_ID

32565148 1049 1797 oracle 6880 19922 1


Check runways:

In my case: Process=6880

select s.sid , s.serial# from v$session s , v$process p where s.paddr = p.addr and s.process ='6880';

Output:

SID #SERIAL

1049 1797

Kill runaway process:

alter system kill session '1049,1797';

 or

How to kill long running/hang concurrent request

SELECT ses.sid, ses.serial# from v$session ses, v$process pro WHERE ses.paddr = pro.addr and pro.spid IN (SELECT oracle_process_id FROM fnd_concurrent_requests WHERE request_id =11613265);

You will get spid & pid from above request. Pass your request id in above query. And run below query with sys user.

SQL> ALTER SYSTEM KILL SESSION ' 1114, 8017' IMMEDIATE;

System altered.

No comments:

Post a Comment