Different Types of Concurrent Manager
Conflict Resolution Manager (CRM)
The Conflict Resolution Manager enforces all compatibility rules and based on priorities and run rules, determines
which jobs can run when if there is a conflict in timing. You cannot change its definition, but can set its values for sleep
time for each work shift or for parallel Concurrent Processing, if applicable.
Product Specific Concurrent Manager
There are many product specific Concurrent Managers. The list includes
Inventory, MRP, and Projects, as well as any
User-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
Internal Concurrent Manager (ICM)
The Internal Concurrent Manager (ICM) is the controlling manager for all of the others. When you start the Concurrent
Managers, this is the only one that you actually have direct control over. This manager in turn starts all of the others
depending on their schedules and work shifts. It controls starting and stopping all other managers based on the
definition of their work shifts and it monitors for failures. If there are failures, it cleans up after them. Its definition
cannot be changed after its startup. On starting, you can, by parameter passing, set its values for sleep time, PM ON
on cycle, and queue size.
The Scheduler Manager, added in 11i, assists the ICM and the CRM in scheduling and conflict resolution.
The Standard Manager (as the name implies) is the manager that ships with the Oracle E-Business Suite and accepts
any and all requests and does not, as configured, have any specialization rules. The Standard Manager is
Customizable but care needs to be taken to ensure that, if you change the rules on the Standard Manager, that all jobs
Have a manager that is able to run them.
Conventional Concurrent Managers run batch type jobs that are typically long running, involve large amounts of data,
and run asynchronously. Transaction Managers run synchronous processing of certain reports requested from a client
Program but run as a server side program. These managers run as immediate programs, are started automatically by
the ICM, and communicate with Transaction Managers automatically. Running the job is transparent to the calling user
as the job runs extremely quickly and in real time. The calling client is notified of the ultimate outcome of the program
Execution by a completion message and a set of values returned to them.
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
$FND_TOP/sql/afcmstat.sql script gives you a list of concurrent managers and their respective status