今天有一個Concurrent Requests:Cost Rollup出現紅色的Error,Log的訊息如下: MSG-00000: Before exploder 2014/11/19 10:37 MSG-00000: Group Id: 1548433 MSG-00000: Calling compute low level codes MSG-00000: After exploder 2014/11/19 10:45 MSG-01999: 29: CST_LOCK_FAILED_CIC REP-1825: Before Report trigger returned FALSE. 同事說應該是有無法Lock相關物件(CST_LOCK_FAILED_CIC),所以先執行下列的語法查詢: select * from v$locked_object a , dba_objects b where a.object_id=b.object_id and object_name like 'CST%'; 發現有幾個CST開頭的表格正在Lock,而Session ID都是1726,於是再查SID 1726的狀態: select vs.sid,vs.serial#,vp.spid,vs.*,vp.* from v$session vs,v$process vp where vp.addr=vs.paddr and vs.sid in (1726); 查詢得知1726是一個Concurrent Request的Session,再執行下列的查詢語法: select vs.sid "Session_SID" ,vs.serial# "Session Serial#" ,vp.spid "OS PID" ,fcp.user_concurrent_program_name "Concurrent Name" ,fcr.request_id ,fcr.actual_start_date "Start Time" ,fcr.actual_completion_date "Finish Time" ,(fcr.actual_completion_date-fcr.actual_start_date)*24*60*60 "Expense Time(second)" ,decode(fcr.phase_code,'R','Running', 'C','Completed','P','Pending','I','Inactive') "Request Status" ,decode(fcr.status_code,'A','Waiting','B','Resuming','C','Normal', 'D','Cancelled','E','Error', 'F','Scheduled','G','Warning','H','On Hold','I','Normal','M','No Manager', 'Q','Standby','R','Normal','S','Suspended','T','Terminating','U','Disabled', 'W','Paused','X','Terminated','Z','Waiting') "Request Phase" from v$session vs ,v$process vp ,fnd_concurrent_requests fcr ,fnd_concurrent_programs_tl fcp where vs.paddr=vp.addr and vs.process=fcr.os_process_id and fcr.concurrent_program_id=fcp.concurrent_program_id and fcr.phase_code='R' --running and vs.sid = 1726 ; --Session SID 但是卻傳回空的資料,換句話說就是有Session,而沒有running的concurrent request, 於是登入EBS,在administor的Requests查詢今天有執行過的Cost Rollup, 發現產生Error的Cost Rollup前幾分鐘有一個被使用者取消的Cost Rollup, 可能就是這個原因,本來想要強制刪除Session 1726,但是重新查詢發現Session 1726已經綀束了, 所以請使用者重新執行Cost Rollup,這次就成功了。
文章標籤
全站熱搜
創作者介紹
創作者 keven 的頭像
keven

平凡的幸福(備站)