Two things are obvious:-
1. Concurrent Manager is related to Concurrent Programs
2. Concurrent manager manages the concurrent(oops I mean parallel) execution of concurrent programs.
So what's left to explain?.....Well nothing much, but I gave a commitment to one of my readers that I shall write something about concurrent managers today. And now when I begin to write, I realize it is worth writing something in plain English on this topic.
Lets explain this with some Q&A
Question : How to run a concurrent program?
Answer: In oracle apps you have a concurrent program submission screen. You can submit the concurrent program from that screen.
Question: What happens when you submit a concurrent program?
Answer: There is something known as Concurrent Manager that runs in the background all the time. This background process, called Concurrent Manager ideally will be running 24x7.
As the name suggests, purpose of a concurrent manager is to manage the submitted concurrent programs.
Question: When I submit a concurrent program( or call it concurrent request), how does concurrent manager pick this up?
Answer: Concurrent manager will be running in the background waiting for a concurrent program to be submitted. As soon as a concurrent program is submitted, it then gets put in an execution queue by concurrent manager.
Question: Why does the Concurrent manager put a concurrent program into a queue? Why doesn't the manager simply let the program run?
Answer: Because at any given point in time a concurrent manager can run no more than say 10 programs concurrently. This figure of 10 is configurable of course. 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.
Question: If we have two concurrent programs, that must never run in parallel(oops I mean concurrently)....can concurrent manager manage such scenarios?
Answer: Of course it can. When you define a concurrent program, you can specify if there are any incompatible programs. If incompatible concurrent programs exist, then concurrent manager will wait for the incompatible program to complete.
Question: Is that all what concurrent manager does?
Answer: Much more, if interested, then read on….
Concurrent manager is responsible for below things too…..
Managing the printer:-
An Oracle Report is registered as a concurrent program too. During submission or during the definition of concurrent program, we can specify the printer where report gets printed. Concurrent manager will send the output of the program to that printer.
Managing the programs completion status-
For example a pl/sql concurrent program can set retcode=2 to make a program complete with warning. Hence concurrent manager not just executes the program, but it manages the completion status of the program too.
Classpath of a java program:-
A concurrent program can be of type java too. If for this specific concurrent program you wish to use a set of java libraries, then you can specify the path of that library in concurrent program definition. Concurrent manager will amend the CLASSPATH to reflect the path of the java library.
Interaction with host concurrent program-
When running a host concurrent program, the concurrent manager passes the apps password as a parameter to the unix script
Tracing a concurrent program
Concurrent manager enable the session trace for the concurrent program, if enable trace checkbox is checked in program definition. You can then go to user dump directory and do tkprof on the file.
Optimization options:-
The concurrent program definition provides an option to specify optimization mode, like choose, fist rows,all rows, rule based etc. The concurrent manager will alter the optimization mode of the session before the submission of the program. Obviously this option has no relevance to Host type concurrent program.
More? ...well I am bored with concurrent managers now, I guess you too are by now....
Comments
I am working as an Technical Consultant for the past 1 year,but i came across yor site very late,It is a good site for beginners,very helpful
I faced a peculiar problem with incompatible conc progs.
Situati on- prog A is incompatible with prog B. Another conc prog C (pl/sql code) submits B and A in sequence. Intention was to execute B and after completion, execute A. But somehow A started executing before B.
I removed the incompatiblity and from conc prog defn of B, I added A as incompatible. (Earlier the incompatibily was added from conc prog defn of A). Everything went fine as expected!
Can it happen that the conflict resolution manager is not able to handle requests submitted with an interval of nano-seconds? Or is it just the way oracle works?
Could you please through some light on this?
Thanks in advance,
Amita bha Dutta
Never tried this.
But to overcome this you may use wait_for_reques t or even give sleep for couple seconds.
Tha nks,
Anil Passi
this website, i came across while i am under training in chicago and still under training since a month........i feel that this site is really good one for the beginners.....
thanx for making one where oracle aspirers like me can benefit.
thanx in advance
ashok varma alluri
I have fresh oracle 12r on my system and there is no concurent manager is running please how am i supposed to do that?
thanks
Pr aveen
I am a new visitor in this site and after a long time I have found one site which is very helpful for the freshers in Oracle Application.I was trying to find the site which gives a clear concepts in basic and I find this site to be very helpful for me.
Thanks a Lot
I have defined a concurrent program and attached it to a function in a particular responsibility. In order to define a conc pgm as a function one has to pass parameters like program name, use org etc... one of the parameters there is 'TITLE'. This is the title that appears on the conc pgm submission window when submitting the attached pgm. All the seeded programs attached to a function have a title being passed. The application then translates the title into a meaningful title. I am unable to figure out where to define a title for my program in order do display a meaningful title for my program.
Any inputs regarding this would be highly appreciated!.
-Thanks
Sujit
I want to know the concept of dependent,segme nt,profile value sets.Can u give one example and explain
Thanks ,
Haarika
Very much interesting about your site, it is very useful.
I want to implement some batch file has to run from con current program, usually con current program is looking for exe files. How we do define to use the batch (abc.bat) or command file (abc.cmd 1;.
Awaiting for your reply
Thanks
M .K.Thamaraiselv an
I have one requiremnt in which we registered one concurrent program as host file.
and in reqirement i need to print the in the output of concurrent program file.how to achieve that can anybody suggest?
I used echo to print in the log file, but need the command or script to print in the output file
Thanks,
Priyanka
Would you be interested in exchanging links or maybe guest authoring a
blog post or vice-versa? My site addresses a lot of the same topics as yours and I feel we could greatly benefit from each other.
If you are interested feel free to shoot me an e-mail.
I look forward to hearing from you! Fantastic blog by the way!
My webpage finance lawyer: http://86x.org/home.php?mod=space&uid=234355
to be happy. I've read this publish and if I may just I want to suggest you some interesting issues or advice.
Perhaps you could write subsequent articles referring to this article.
I want to read more issues about it!
will obtain benefit from it I am sure.
And i am glad reading your article. But should remark on few general things, The
web site style is wonderful, the articles is really
great : D. Good job, cheers
Also visit my web site สล็อต 1234
ฟรีเครดิต: https://Okwin124.com/slot1234-%e0%b9%81%e0%b8%88%e0%b8%81-%e0%b8%9f%e0%b8%a3%e0%b8%b5%e0%b9%80%e0%b8%84%e0%b8%a3%e0%b8%94%e0%b8%b4%e0%b8%95/
your won webpage.
this website, and piece of writing is actually fruitful in support of me, keep up
posting these posts.
I've loaded your blog in 3 completely different
web browsers and I must say this blog loads a lot faster then most.
Can you suggest a good web hosting provider at a honest price?
Cheers, I appreciate it!
new website or even a weblog from start to end.
which i am going to convey in university.
it assists new internet viewers, who are wishing in favor of blogging.
I book-marked it to my bookmark website list and will be checking
back in the near future. Take a look at my website too and let me know how you feel.
RSS feed for comments to this post