Concurrent Manger
The concurrent managers in the Oracle e-Business suite serve several important administrative functions. Foremost, the concurrent managers ensure that the applications are not overwhelmed with requests, and the second areas of functions are the management of batch processing and report generation.
Concurrent Manager is a mechanism that runs concurrent programs. A manager operates during the time and days defined by a work shift. A manager can run any concurrent program or be specialized to run only certain kinds of programs. Oracle Applications come with three predefined concurrent managers:
1 - the Internal Concurrent Manager (ICM) and
2 - The Standard manager
2 - The Standard manager
3- Conflict Resolution Manager
Different Types of Concurrent Managers
Internal Concurrent Manager — The Internal Concurrent Manager (ICM) controls the other managers. It must be running before any other managers can be activated. The main functions of the ICM are to start up and shutdown the individual concurrent managers, and reset the other managers after one them has a failure.
Conflict Resolution Manager — The Conflict Resolution Manager (CRM) functions to check concurrent program definitions for incompatibility rules. However, the ICM can be configured to take over the CRM's job to resolve incompatibilities.
Standard Manager — The Standard Manager functions to run any reports and batch jobs that have not been defined to run in any specific product manager.
Product Specific Concurrent Manager — There are many product specific Concurrent Managers. The list includes Inventory, MRP, and Projects, as well as anyUser-defined managers. These managers are specialized to perform Concurrent Processing specifically for those products for which they are built. Utilizing these managers can help you off-load some of the processing from the Standard Manager.
Scheduler Manager — Scheduler Manager, assists the ICM and the CRM in scheduling and conflict resolution.
Transaction Managers — A Transaction Manager is owned by an application and associated with a data group. Due to this association, and the fact that it runs immediate programs, the Transaction Manager can only run programs contained within its program Library.
Service Manager — Service Manager acts on behalf of the ICM, allowing the ICM to monitor and control service processes on that host. Services such as the Oracle Forms Listener, Oracle Reports Server, Apache Web listener, and Oracle Workflow Mailer can be run under Service Management. Generic Service Management (GSM) provides a fault tolerant system. If a service process exits unexpectedly, the ICM will automatically attempt to restart the process. If a host fails, the ICM may start the affected service processes on a secondary host. The ICM itself is monitored and kept alive by Internal Monitor processes located on various hosts.
The Internal Monitor — The IMis used in a PCP environment and monitors the Internal Concurrent Manager, and restarts any failed ICM on the local node. During a node failure in a PCP environment the IM will restart the ICM on a surviving node (multiple ICM's may be started on multiple nodes, but only the first ICM started will eventually remain active, all others will gracefully terminate). There should be an Internal Monitor defined on each node where the ICM may migrate.
Concurrent Program
A program that runs concurrently (at the same time) as other programs. Concurrent programs run as background processes, while you continue to work at your terminal.
Concurrent Request
A command to start a concurrent program. An example of a concurrent request is a command to generate and print a report.
Find out Concurrent Manager Node:
To find out Concurrent manager Node here are few ways to find it .
1: SQLPLUS> select node_name from apps.fnd_nodes where support_cp='Y';
2: In context file (SID_hostname.xml ) under $APPL_TOP/admin , check for variable < TIER_NODE oa_var="s_isConc" >YES< / TIER_NODE>, YES means this is Concurrent Manager Node.
2: In context file (SID_hostname.xml ) under $APPL_TOP/admin , check for variable < TIER_NODE oa_var="s_isConc" >YES< / TIER_NODE>, YES means this is Concurrent Manager Node.
3: Check from front end
Navigation: System Administer=> Concurrent: Manager=> Administer under SYSADMIN responsibility.
4: "ps -ef | grep FNDLIBR" under application User on all nodes where FND(Foundation) LIBR(Library) is executable.
Navigation: System Administer=> Concurrent: Manager=> Administer under SYSADMIN responsibility.
4: "ps -ef | grep FNDLIBR" under application User on all nodes where FND(Foundation) LIBR(Library) is executable.
STARTING THE CONCURRENT MANAGERS:
1: Startmgr sysmgr=apps/apps
2: adcmctl.sh apps/<psswd> start
($COMMON_TOP/admin/script/CONTEXT_NAME/adcmctl.sh)
When you run adcmctl.sh it records execution of this command in text file with name adcmctl.txt at directory $COMMON_TOP/admin/log/$CONTEXT_NAME. adcmctl.sh called another script startmgr which in turn calls batchmgr in $FND_TOP/bin and this is actual file which fire up Internal
Concurrent Manager Process.
STATUS OF CONCURRENT MANAGER:
./adcmctl status apps/(apps password)
or
or
$ps -ef | grep FNDLIBR
STOPING THE CONCURRENT MANAGERS
1: CONCSUB apps/apps SYSADMIN 'System Administrator' SYSADMIN CONCURRENT FND DEACTIVATE
DEACTIVATE tells the managers to complete processing of any running requests before terminating. This is a cleaner way of bringing down the managers.
2: CONCSUB apps/apps SYSADMIN 'System Administrator' SYSADMIN CONCURRENT FND ABORT
You can find the location of the executable CONCSUB, by issuing the following command.
[applmgr@apps ~]$ find /apps/ -name CONCSUB
/apps/appsappl/fnd/11.5.0/bin/CONCSUB
ABORT tells the managers to terminate the managers immediately. When the concurrent
managers are terminated through the abort command, the jobs that they were running will be
returned to pending status.
3: ./adcmctl stop apps/apps
($COMMON_TOP/admin/script/CONTEXT_NAME/adcmctl.sh)
LOCATION OF CONCURRENT MANAGER LOG FILES:
A: 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
The default name of the concurrent manager log files is std.mgr. You can change these by setting the parameter logfile=<name>.
Standard manager log: w<000000>.mgr
Transaction manager log: t<000000>.mgr
Conflict Resolution manager log: c<000000>.mgr
Where: <00000> is the concurrent process id of the manager
To change the log file name logfile=name.log
$startmgr sysmgr=apps/apps logfile=name.log
Use Diag=Y it will allow you to add debugging information into the concurrent log
files for troubleshooting. Manager Log Files:
$startmgr sysmgr=apps/apps diag=y
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.
HELPFUL DIAGNOSTIC SCRIPTS :
The following SQL scripts located under $FND_TOP/sql are useful when diagnosing
concurrent manager problems:
concurrent manager problems:
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.
nice
ReplyDelete