interview questions on concurrent manager oracle apps with solution

Q1. Why concurrent request is in pending standby mode for long time ?



Phase code Pending and Status code Standby means concurrent request has been processed by ICM (Internal Concurrent Manager) , however it is held by CRM(conflict resolution manager) due to incompatibilities with other programs that are currently running. One more possibility of pending standby is CRM itself is not available / not running.


i. Through SYSADMIN login go to System Administrator responsibility -> concurrent manager -> CRM And check if it is running state if not then activate the same

ii. In above scenario if CRM is running and still concurrent request is in pending standby state then click on verify button and resubmit the request.

iii. if above two steps doesn't help then application developer intervention is required to re-validate the incompatibilities in application developer responsibility -> concurrent -> program -> Incompatibilities 

Q2Why concurrent request is in pending inactive mode for long time ?



concurrent request goes in pending inactive status when there is no available concurrent manager process to execute the submitted request 


i. Check if ICM or SM (Standard Manager) processes are running , start them if not they are not running

ii. Even if ICM/SM managers are running but status is pending inactive for long time , ICM/CM considered to be busy and exhausted with number of processes allocated. So consider adding processes as per availability of OS resources on concurrent manager node

iii. Check if any specialization rule applied to concurrent request submitted and delete the same

iv. Check if 'Run Alone' flag is set FND_CONCURRENT_REQUEST table (RUN_ALONE_FLAG) column , remove the same

Q3Why request logfile says manager processing this request is not responding ?



Standard or product manager which has accepted the request but unable to process the same leads to not responding message in request logfile.

Possible reason for non working managers is inappropriate node definition in manager -> define , which fails during fail-over of process


i. Check the definition of concurrent manager and update appropriate node configuration of parallel concurrent manager

ii. Check if particular concurrent manager which has accepted the request is hanged and which may need termination through OS pid killing or by updating Phase code => C (Completed) And status code => D (Disabled)

Q4Why concurrent request is running for long time without completion ?



concurrent request is said to be running long time when phase code is Running and status code is Normal over longer period when compared with time taken for completion in the history of execution of CPID/concurrent program ID.

concurrent request may run longer for multiple reasons such as Untuned sql queries , fetching huge data in output file , stale statistics of the table involved in slow running sql , missing indexes , new deployment or huge volume being processed with high workload on system 


i. Identify slow running concurrent manager request ID and get relevant information e.g. dbname , sid or OS process is /pid

ii. identify concurrent program id for comparison with history of execution 

iii. Use view such as v$session , v$process , v$sqlarea , v$session_longops , v$session_wait to identify long running db session and relevant sql statement

iv. In case concerned request execution program is very complex with high number of line of codes go for oradebug or form level tracing 10046 level 12 trace and run tkprof to identify slow running sql execution plan and tune it further as per best practice

Q5Why concurrent request queue is increasing ?



Possible reason for requests getting queue up in Phase/Status (Pending/Normal, Running/Normal)

i. Inadequate number of concurrent manager processes serving high number of user requests

ii. Over sizing of CM process causing bottleneck at OS leading to high utilization of resources and slowdown  

iii. Hanged sessions due to en-queue wait event on FND tables to manage the concurrency 


i. Check ICM and other concurrent manager process for active status

ii. Re-review the number of processes handling concurrent request for particular application against load on system or hardware configuration

iii. Check if any ORA-00054 resource busy and acquire with NOWAIT error appears in request logfile , which needs to be cleaned up by updating phase/status code in FND_CONCURRENT_REQUEST table as performed in Q3 solution

iv. Verify sleep time if SM is taking time to pick up the pending queue. In R12 , sleep time
is overridden it incoming request volume is high

v. Manage Work Shift setting in accordance with criticality and appropriate time slot for set of concurrent requests

vi. Sleep time to be updated as per formula S = N * (1-U) * T

S= Sleep time in seconds
N= Number of CM processes
U= Utilization of system by CM
T= Time for which request is allowed to be pending

vii. Increase the cache size post analyzing its effectiveness in few runs 

Also Refer  , Concurrent Manager request workflow in oracle Apps

No comments:

Post a Comment