I dont want to give same old stuff in the System Administrator guide. I would like to give more information on general things in Concurrent managers in this writing.
Concurrent managers are the one way of running the background programs in a structured and a standard way. Any program that can be run in the background should take the help of concurrent managers to get completed i.e., in other words, concurrent managers are the environment or the containers that manage the life cycle of the background programs. If you well aware of the OOPS concept, understand concurrent managers is easy.
All the info in Oracle is stored in the database only. First we will the important tables, that the concurrent managers use to store the data.
FND_CONCURRENT_QUEUES - This is the table where all the concurrent manager definitions are stored. This table describers all about the concurrent managers. Managers in other words are called Queues. These are NOT AQs or any other persistent queues. They just take and run the programs one-by-one in a queue manner and so is the name.
FND_CONCURRENT_PROCESSES - This table stores the run-time information of the concurrent managers or the running instance of the concurrent managers. We can assume the records in this table as the object of the record in fnd_concurrent_queues.
One record in fnd_concurrent_queues can have multiple records in fnd_concurrent_processes.
In other words, FND_CONCURRENT_QUEUES is the design time table and FND_CONCURRENT_PROCESSES is the runtime table.
FND_ENV_CONTEXT - Each manager would use the environment settings in the Operating system to do run. For this, each concurrent process logs a record per environment variable in this table. When you want to check what value of the environment variable a concurrent manager aka process is using, you can check this table. This is also a runtime table.
FND_NODES - This is one of the most important tables when we talk about the concurrent managers. The concurrent managers start on the node by spawning an executable FNDLIBR where the adcmctl.sh script (this is the script which is used to start the concurrent managers). The node information like hostname, platform etc is taken from this table.
All the runtime information about the process would be stored in FND_CONCURRENT_PROCESSES table. This table is dynamic table meaning, if you stop the concurrent managers and truncate this table and restart the concurrent managers, they will again populate the records in this table. As I told you this is just the instances of the concurrent managers. They will be active only when you start the concurrent managers.
Thats enough now for the tables. Now, when the concurrent managers are started, each manager which is enabled in the fnd_concurrent_queues table would kick-off and spawn 'x' number of processes at the O/S level. This 'x' number of processes are also picked up from the same table. Each process of the manager would then take the requests in a queue (from fnd_concurrent_requests table) and then run the request in the background. You can view the output and the progress of the request in the SRS form in the Oracle Applications front-end.
Next, I would tell you whats the sequence in which the concurrent managers start.
Sunday, August 05, 2007
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment