Power Tools: Running AutoConfig in Parallel in EBS 12

[Editor's Note:  This is the second of a series of four articles on new AutoConfig features.  These articles are written by members of our AutoConfig Development team.  This is your opportunity to interact directly with that team with your feedback on this tool.]

Our last article discussed ways of tuning your AutoConfig runs via profiling reports that identify bottlenecks during template instantiation.  This article discusses another method of speeding up your AutoConfig runs.  In an R12 E-Business Suite instance, AutoConfig can now be run simultaneously across multiple nodes. This new feature significantly lowers maintenance downtime for multi-node installations. One beta customer of this feature improved the time it takes them to run AutoConfig across their dozen mid tiers by 45%.

How Does AutoConfig's Parallel Mode Work?

Executing AutoConfig in 'parallel mode' engages a locking mechanism so that processes running on individual nodes are synchronized. This mechanism prevents any conflicting updates to the database or the file system. The following figure illustrates AutoConfig running in parallel across multiple nodes:

Diagram showing how AutoConfig runs in parallel on EBS 12

Executing AutoConfig in Parallel Mode

The following command can be used to run AutoConfig in 'parallel mode'

Application Tier

perl $AD_TOP/bin/adconfig.pl contextfile=<CtxFile> [product=<product_top>] –parallel

Database Tier

perl $ORACLE_HOME/appssutil/bin/adconfig.pl contextfile=<CtxFile> –parallel

where

<CtxFile> is the absolute path to the context file
<product_top> is the Product short name

Note that while running AutoConfig simultaneously on multiple nodes, it is very important to ensure that the '-parallel' option is specified while starting AutoConfig on each node to prevent unstable and/or inconsistent filesystem and database states.

Downloading the Latest AutoConfig Engine

Customers on Oracle E-Business Suite Release 12 can obtain this new feature by installing:

This feature is currently not available for Oracle E-Business Suite 11i.  We currently do not have precise plans for delivery of this feature in 11i.

Your Thoughts?

Please let us know about your experience on using this new feature. We'd be very interested in hearing about how long it takes to run AutoConfig on your multi-node installations with and without the 'parallel' option. The new AutoConfig Performance Profiler feature can be used to collect this information. Also let us know of any issues you encounter while using this feature.

References

Related Articles

Comments (10)

Jurijs Velikanovs:

Hello Srinivas,

The autoconfig parallel option is very cool staff from my point of view.
A. Just wonder can you comment if in previous autoconfig versions (before you implemented that feature) running autoconfig in parallel mode (just running autoconfig on multiple nodes at the same time without specifying any thing in addition) was unsupported and unrecompensed practice?
I remember some time ago we had related discussion in that blog related to that question and conclusion was it doesn’t suppose to damage anything.

>> it is very important to ensure that the '-parallel'
Would it be beneficial to make it other way around? If without that option (product top locking) there is a risk to damage/corrupt ether a product file system, ether data why you wouldn’t use that a default protection behaviour?
I don’t see any negative impact if each autoconfig run would lock appropriate product top (by default) to prevent any possible case of corruption and ensure that only one autoconfig session change a configuration at that very moment?

Once again! Thank you very much for making Apps DBA easer and improving ATG functionality.

With all my respect,
Hope to hear from you soon,
Yury

Srinivas Chaganti:

Jurijs,

Since AutoConfig processes perform CRUD operations on shared resources (Eg: DB profiles), it is important to ensure that AutoConfig processes are synchronized.

The idea here was to provide a generic solution instead of dealing with one-off/ad hoc cases.

We do not engage the locking mechanism by default because:

1. We did not want to add the overhead of locking/unlocking product tops in a normal AutoConfig run.

2. AutoConfig is used internally by other products (Eg: cloning, Rapid Install, adpatch), some of which run AutoConfig while the DB is down. The locking mechanism would fail in these cases.

Thanks,
Srinivas

Jurijs Velikanovs:

>> 1. We did not want to add the overhead
Just wonder what do you mean by locking overhead? I thought you just call DBMS_LOCK once per product, right?
If so we are talking about 30 DBMS_LOCK calls max. I don’t think it is an overhead at all.
>> 2. ... DB is down ...The locking mechanism would fail in these cases.
Aren’t we talking about one IF statement? :)

You might say that those things are not simple and I truly believe that they are not. But I encourage you to make this feature default it in the future releases as it sound very good and logical to me.

Have a good and short week,
Yury

Naresh Giri:

This Feature , we had thots in the past.

What about the Shared Appltop ?
how does parallel helps as all the nodes sharing the same production TOPs.??

--
Naresh

Srinivas Chaganti:

Naresh,

AutoConfig parallel run is supported in shared Appltop setup also.

Thanks,
Srinivas

vinay:

Are there any plans to certify it in 11i

Thanks/Vinay

Stuart Moore:

Hi
I was just wondering why the parallel option cannot be used running the sh version adautocfg.sh in the $ADMIN_SCRIPTS_HOME
When I try parallel as an option I receive the error
adautocfg.sh parallel
./adautocfg.sh: unrecognized action specified

# $Header: adautocfg_ux.sh 120.4 2008/02/19 04:28:02 sbandla ship $

Surely this is an oversite and there is patch to add this functionality?

Regards

Stuart

Srinivas Chaganti:

As you must have already known $ADMIN_SCRIPTS_HOME./adautocfg.sh is just a AutoConfig wrapper script.

The script was implemented for ease of use (Example: It just prompts for apps password, all other parameters are taken as default - including context file).

It as such does not support any of the other AutoConfig parameters and '-parallel' option is no exception.

Are there any plans to certify it in 11i:

We do not have any scheduled plan to implement this in 11i as of now.

Zosen Wang:

I am working on migrate existing r12 with 11g from RH to suSe. The db is from single node to 4 nodes RAC and the apps tier is from 2 nodes share appl_top to 10 nodes shared appl_top. During config shared appl_top, we need run autoconfig on the node after adding each node plus run autoconfig on all nodes after configed last node. This requires to run autoconfig more than 19 times.

In order to reduce down time, I am thinking to use autoconfig in parallel mode. I have following questions:
1. Do you think this is good approach?
2. Is “adconfig.pl –parallel” option automatically to start autoconfig on other nodes?
3. Or, I have to start “adconfig.pl –parallel” on each node but can start at the same time.
4. Can I run adautocfg.sh with/without parallel when the application is online and the users are using the node? I always run it by shut down apps on the node, but I heard we can run it when apps is up on the node.
Thanks in advance

Srinivas Chaganti:

Hi,

You could use AutoConfig's '-parallel' option in the final run.

'adconfig.pl –parallel' needs to be explicitly started/run on each node.

We have plans to integrate AutoConfig and other configuration tools in Oracle Applications Plugin for Oracle Enterprise Manager. This would allow you to run AutoConfig across nodes from a single UI console. It would also take care of restarting the services as part of its execution.

To my knowledge running AutoConfig in 'hot mode' (with out shutting down the services) is not supported yet.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

Google Search

Archives

Subscribe to Updates

Powered by
Movable Type and Oracle