About Conc Manager

Concurrent managers are used to run concurrent jobs or programs.
Concurrent programs are processed by concurrent managers.

There are four main concurrent managers.They are

1)ICM

ICM stands for internal concurrent manager.
Internal concurrent manager(ICM) moniter all  other managers like Standard Manager,MRP manager,Conflict Resolution Manager and etc , if it finds any other manager is down it will bring it up.
               
The main function of ICM are to startup and shutdown the individual concurrent manager and reset the other manager after one of them has failure.

if ICM goes down all other manager keeps working.
ICM will not process/Execute any request.


The concurrent manager log files can be located in one of the following
       places:

       1.  If the environment variable $APPLCSF is set,  the default location
           is $APPLCSF/$APPLLOG

       2.  If the environment variable $APPLCSF is not set, the logs go to
           $FND_TOP/$APPLLOG


Log naming convention for ICM.
============================

Internal manager : SID_<TIMESTAMP>.mgr

 ls -tlrh <SID>*.mgr|tail  ==>check the logfile to trubleshoot if any errors.



2)SM

SM stands for standard manager.
Standard managers are used to run any kind of request.
All the unassinged and unattached jobs will be taken care by standard managers but We can assign a specific program to specific manager.

Log naming convention for SM.
============================
W<request id>.mgr

ls -tlrh W<request id>.mgr|tail  ===> to see the current request processing by SM.

3)CRM

CRM stands for conflict resolution manager.
it resolves the conflict such as request incompatibilities.
When a concurrent request is being process and another manager is trying to process same kind of request ,there is an incompatibility with the concurrent request and resolved by CRM.
CRM checks whats that program and whether that program has incompatibilities (or) it is already running.


Log naming convention for CRM.
============================
c<request id>.mgr


4)TM

TM stands for transactional manager.
A transaction manager started on concurrent processing server and periodically reads the pipe for incoming transaction.

Log naming convention for TM.
============================
t<requesd id>.mgr

What is the meaning of Concurrent ?
Parallel .

How to run a concurrent program?
In oracle apps we have concurrent program submission screen .
we can sumbit the Concurrent program/Concurrent Request from that screen.

What happens when you submit a concurrent program?
purpose of a Concurrent manager is to processes Concurrent program/jobs.

When I submit a concurrent program( or call it concurrent request), how does concurrent manager pick this up?
 Concurrent manager will be running in the background waiting for a concurrent program to be submitted. As soon as a concurrent program is submitted.Concurrent Manager put the program in execution queue .

Why does the Concurrent manager put a concurrent program into a queue? Why doesn't the manager simply let the program run?

Suppose my concurrent manager will run 10 request at a given time . First the manager puts a submitted program into a queue, next the manager checks if there is a slot available (i.e. Less than 10 programs
are currently running). If a slot is found available, the concurrent manager then runs the program, or else it keeps the concurrent program in a queue with status Pending.



How to stop the concurrent manager at OS level?
Click on the below link



++++++++++++++++
Phase status Description
++++++++++++++++++
PENDING/Normal -Request is waiting for the next available manager.
PENDING/Standby-Program to run request is incompatible with other program currently running.
PENDING/Scheduled-Request is scheduled to start at a future time or date.
PENDING/Waiting-A child request is waiting for its Parent request to mark it ready to run. For example, a request in a request set that runs sequentially must wait for a prior request to complete.
RUNNING/Normal-Request is running normally.
RUNNING/Paused-Parent request pauses for all its child requests to finish running. For example, a request set pauses for all requests in the set to complete.
RUNNING/Resuming -All requests submitted by the same parent request have completed running. The Parent request resumes running.
RUNNING/Terminating-Request is terminated by choosing the Cancel Request button in Requests window.
COMPLETED/Normal-Request completed successfully.
COMPLETED/Error-Request failed to complete successfully.
COMPLETED/Warning-Request completed with warnings. For example, a request is generated successfully but fails to print.
COMPLETED/Cancelled-Pending or Inactive request is cancelled by choosing the Cancel Request button in the Requests window.
COMPLETED/Terminated-Request is terminated by choosing the Cancel Request button in the Requests window.
INACTIVE/Disabled-Program to run request is not enabled. Contact your system administrator.
INACTIVE/On Hold-Pending request is placed on hold by choosing the Hold Request button in the Requests window.
INACTIVE/No Manager-No manager is defined to run the request. Check with your system administrator. A status of No Manager is also given when all managers are locked by run-alone requests.


DIAGNOSTIC SCRIPTS
===================

       1.  afimchk.sql  Tells the status of the ICM and PMON method

       2.  afcmstat.sql  Lists active manager processes

       3.  afrqrun.sql  Lists all the running, waiting and terminating 
                         requests

       4.  afrqwait.sql  Lists requests that are constrained and waiting 
                         for the ICM to release them

       5.  afrqscm.sql  Prints log file name of managers that can run a 
                         given request.  It can be used to check for possible 
                         errors when a request stays in pending status.  It 
                         requires a request id value.

       6.  afcmcreq.sql  Prints the log file name of the manager that processed 
                         the request

       7.  afrqstat.sql  Summary of completed concurrent requests grouped by 
                         completion status and execution type.  It requires 
                         number of days prior to today on which to report 
                         parameter.

       8.  afimlock.sql  Lists locks that the ICM is waiting to get

       9.  afcmrrq.sql  Lists managers that currently are running a request

No comments:

Post a Comment