Oracle Apps Concurrent Processing:An Introduction
June 23, 2010 Leave a comment
This article gives an introduction of Concurrent Processing in Oracle Application.
An instance of an execution file, along with parameter definitions and incompatibilities. Several concurrent programs may use the same execution file to perform their specific tasks, each having different parameter defaults and incompatibilities.
Concurrent Program Executable:
An executable file that performs a specific task. The file may be a program written in a standard language, a reporting tool or an operating system language.
An execution method can be a PL/SQL Stored Procedure, an Oracle Tool such as Oracle Reports or SQL*Plus, a spawned process, or an operating system host language.
A request to run a concurrent program as a concurrent process.
An instance of a running concurrent program that runs simultaneously with other concurrent processes.
A program that processes user’s requests and runs concurrent programs. System Administrators define concurrent managers to run different kinds of requests.
There are many concurrent managers each monitoring the flow within each apps area.
But there are 3 MASTER CONCURRENT MANAGERS:
1. Internal Concurrent Manager (ICM): This is the one which monitors all other CMs
2. Standard Manager (SM) : This takes care of report running and batch jobs
3. Conflict Resolution Manager (CRM): checks concurrent program definitions for incompatibility checks.
We cannot delete a concurrent manager… but we can disable it… but it’s not recommended.
List of concurrent requests awaiting to be processed by a concurrent manager.
Phases and Statuses through which a concurrent request runs:
A concurrent request proceeds through three, possibly four, life cycle stages or phases:
- Pending Request is waiting to be run
- Running Request is running
- Completed Request has finished
- Inactive Request cannot be run
Within each phase, a request’s condition or status may change. Below appears a listing of each phase and the various states that a concurrent request can go through.
Concurrent Request Phase and Status
- Normal: Request is waiting for the next available manager.
- Standby: Program to run request is incompatible with other program(s) currently running.
- Scheduled: Request is scheduled to start at a future time or date.
- Waiting: A child request is waiting for its Parent request to mark it ready to run.
- Normal: Request is running normally.
- Paused: Parent request pauses for all its child requests to complete.
- Resuming: All requests submitted by the same parent request have completed running. The Parent request is waiting to be restarted.
- Terminating: Running request is terminated, by selecting Terminate in the Status field of the Request Details zone.
- Normal: Request completes normally.
- Error: Request failed to complete successfully.
- Warning: Request completes with warnings. For example, a report is generated successfully but fails to print.
- Cancelled: Pending or Inactive request is cancelled, by selecting Cancel in the Status field of the Request Details zone.
- Terminated: Running request is terminated, by selecting Terminate in the Status field of the Request Details zone.
- Disabled: Program to run request is not enabled. Contact your system administrator.
- On Hold: Pending request is placed on hold, by selecting Hold in the Status field of the Request Details zone.
- No Manager: No manager is defined to run the request. Check with your system administrator.
Different execution methods of executabls:
- FlexRpt The execution file is written using the FlexReport API.
- FlexSql The execution file is written using the FlexSql API.
- Host The execution file is a host script.
- Oracle Reports The execution file is an Oracle Reports file.
- PL/SQL Stored Procedure The execution file is a stored procedure.
- SQL*Loader The execution file is a SQL script.
- SQL*Plus The execution file is a SQL*Plus script.
- SQL*Report The execution file is a SQL*Report script.
- Spawned The execution file is a C or Pro*C program.
- Immediate The execution file is a program written to run as a subroutine of the concurrent manager.
Output formats of a concurrent program:
- PS (Post Script)
- PCL(HP’s Printer Control Language)