并发请求接收在取消时无法锁定请求
(2025-07-14 17:12:06)
标签:
取消并发请求 |
分类: OracleEBS公用模块 |
并发请求接收在取消时无法锁定请求
提交并发请求后,请求的状态为 RUNNING 且无法完成。当我们查询数据库会话时,该请求的请求 ID 没有对应的会话
ID。因此,需要取消该请求并重新提交。然而,当我们尝试取消时,会抛出如下错误。
即使从后端,我们也无法取消该请求,因为该请求被并发请求锁定。因此,让我们来看看如何取消该请求。在此之前,我们将分析导致此问题的根本原因。
1.
Column Manager Format A12
Column Request Format 999999999
Column Program Format A30
Column User_Name Format A15
Column Started Format A15
Column FNDLIBR Format A9
select substr(Concurrent_Queue_Name, 1, 12) Manager,
Request_Id Request,
User_name,
pro.OS_PESS_ID “FNDLIBR”,
substr(Concurrent_Program_Name, 1, 35) Program,
Status_code,
To_Char(Actual_Start_Date, ‘DD-MON-YY HH24:MI’) Started
from apps.Fnd_Concurrent_Queues cq,
apps.Fnd_Concurrent_Requests cr,
apps.Fnd_Concurrent_Programs cp,
apps.Fnd_User Fu,
apps.Fnd_Concurrent_PesS pro
where Phase_Code = ‘R’ And Status_Code ‘W’ And
cr.Controlling_Manager = Concurrent_Pess_Id and
(cq.Concurrent_Queue_Id = pro.Concurrent_Queue_Id and
cq.Application_Id = pro.Queue_Application_Id) and
(cr.Concurrent_Program_Id = cp.Concurrent_Program_Id and
cr.Program_Application_Id = cp.Application_Id) and
cr.Requested_By = User_Id and
cr.request_id =&request_id
2.
select S.sid,
S.serial# serial#,
P.spid,
S.sql_id,
S.Process,
S.last_call_et,
S.event
from gv$session S, gv$process P
where S.paddr = P.addr
and S.process in (‘&process_ID’);
3.
alter system kill session ‘,’ immediate;
4.UPDATE apps.fnd_concurrent_requests
SET phase_code = ‘C’, status_code = ‘X’
WHERE request_id = ‘’;
commit
--刘轶鹤