Sie sind auf Seite 1von 8

Troubleshooting RapidClone issues with Oracle Applications 11i [ID 364565.

1]

  Modified 12-JUN-2009     Type HOWTO     Status PUBLISHE  
D

In this Document
  Goal
  Solution
     Section 1. Before starting to clone 
     Section 2. Preparing Source System 
     Section 3. Copy the files to the Target system 
     Section 4. Configure Target system 
  References

Applies to:

Oracle Applications Manager - Version: 11.5.2 to 11.5.10


Information in this document applies to any platform.

Goal

This Note is NOT a replacement for Note:230672.1. 


Note:230672.1 must be followed when performing a clone of Oracle Applications 11i. 
This troubleshooting note is intended as a guide to help determine the cause of some problems
that may arise during a Rapid Clone. 

The idea is to provide a detailed explanation into what each step is trying to achieve making it
easier to identify which part of the clone has failed and why. 

Locations of log files are listed, which should be uploaded when reporting a cloning issue to
Oracle Support. 

Solution

Section 1. Before starting to clone

The list of pre-requisite patches can be found on Note:230672.1


The first thing to do is check is that all pre-requisite patches have been applied. 
Once this is done, ensure the latest code and templates is being used by applying latest Rapid
Clone patch. 
Check Note 230672.1 for the latest Rapid Clone patch.

Important: There are several steps to applying a rapid clone patch. Checking the recently
applied patch list, or querying the AD_BUGS table, is not sufficient in verifying that the latest
cloning code exists.

Important: When applying a Rapid Clone patch using adpatch, ensure all of the following steps
are performed:-
 Apply the RapidClone patch using adpatch to Apps Tier nodes.
 Run AutoConfig on all Apps Tier nodes

 This will ensure the new templates supplied by the patch are instantiated.

Rapid Clone scripts, such as adpreclone.pl, are also instantiated using the latest templates

> $COMMON_TOP/admin/scripts/$CONTEXT_NAME/adautocfg.sh
appspass=<appspwd>
 Copy the new templates and code from the patch to the DB Tier

Applying the Rapid Clone using adpatch will only deliver the templates and java code to the Apps
Tiers, not the DB Tier, so this step is to collect the required files and copy them to the DB Tier:-

> perl $AD_TOP/bin/admkappsutil.pl

This will collect the required templates and code,used by AutoConfig on the DB tier, and
compress them into the $APPL_TOP/admin/out/appsutil.zip file.

Copy and extract the appsutil.zip to the RDBMS ORACLE_HOME

> unzip –o appsutil.zip


 Run AutoConfig on the DB Tier

The new templates,scripts and java code are delivered by appsutil.zip to the DB Tier. 
However, these still need to instantiated into the configuration files and scripts. 
To do this, run AutoConfig on the DB Tier. 
RapidClone scripts such as adpreclone.pl are also instantiated using the latest templates.

> $ORACLE_HOME/appsutil/bin/adconfig.sh contextfile=$CONTEXT_FILE


appspass=apps

Once this step has been completed successfully, all the java .class files under

RDBMS $ORACLE_HOME/appsutil/java/oracle

should be identical to those under

$JAVA_TOP/oracle.

Important: If it is not immediately evident that the appsutil.zip steps above have been followed,
after applying a new AutoConfig or Rapid Clone patch, then do the steps again. 
Failure to do this may result in issues that have been resolved in a later version of the software.

Section 2. Preparing Source System

Rapid Clone Commands:


DB Tier :

> perl adpreclone.pl dbTier

Apps Tier(s) :

> perl adpreclone.pl appsTier


The preparation phase collects information about the source system, creates a cloning stage
area, and generates templates and drivers. All of these are to reconfigure the instance on a
Target machine.

Preclone will do the following:

 Convert Symbolic links 


All symbolic links pointing to a static path will be converted into relative paths 
 Create templates 
Any files under the $ORACLE_HOME that contain system specific information, will be
replicated and converted into a template. These templates are placed into the
$ORACLE_HOME/appsutil/template directory. 
 Create driver(s) 
A driver file, relating to these new templates is created called instconf.drv. This contains a
list of all the templates and their locations, and the destination configuration files that
these templates will create. 
This driver file is called instconf.drv and is placed into directory

$ORACLE_HOME/appsutil/driver

For the appsTier, both the 8.0.6 and iAS ORACLE_HOMES will have the appsutil/template and
appsutil/driver directories once the preclone stage is completed

For the dbTier, these directories will already exist, but new templates and the new instconf.drv
will be added 

 Create Stage area 


A clone stage is created containing the required java code and scripts to reconfigure the
instace on the Target machine
o Rapid Clone stage area:
 dbTier : $ORACLE_HOME/appsutil/clone
 appsTier(s) - $COMMON_TOP/clone

The stage area(s) consist of the following directories:-

o jre used to run the java code on the Target machine.


o bin contains the RapidClone scripts that can be run on the Target machine:-
 adclone.pl is the main cloning script
 adcfgclone.pl is used to configure the Target system, this calls
adclone.pl
 adclonectx.pl is used to clone a Source XML file manually
 adaddnode.pl is used to add a new node to the Patch History tables
 adchkutl.sh checks for existence of require O/S utils, cc, make, ar and
ld 
o jlib contains all the Rapid Clone java code, jdbc libraries etc
o context contains templates used for a Target XML file 
o data (Database Tier only) contains the driver file, and templates used to
generate the control file SQL script
 adcrdb.zip contains the template and list of datafiles on the Source
 addbhomsrc.xml contains information on the datafile mount points of
the Source 
o appl (Applications Tier only) this is used when merging appltops, i.e Multi-node
to Single node cloning

Important: The information in the stage area is only updated when running adpreclone.pl. 
Whenever an AutoConfig or Rapid Clone patch is applied, and AutoConfig executed, it will not
automatically update the stage area. Only adpreclone.pl will do this. The script adpreclone.pl
must be run (after running AutoConfig) to ensure new code, templates and scripts are copied into
the stage area before performing a clone. 
If this is not done, then the code used to configure the Target system will not be the code from the
latest patches applied. This must be done on all nodes, db and appsTier(s).

Executing adpreclone.pl will create a log file:-

Rapid Clone:

dbTier : $ORACLE_HOME/appsutil/log/$CONTEXT_NAME/StageDBTier_xxxxxx.log
appsTier : $APPL_TOP/admin/$CONTEXT_NAME/log/StageAppsTier_xxxxxx.log

Important: These log files will contain the $Header version of the class file used. 
Ensure this is the version delivered via the latest Rapid Clone patch. 
If it is not the latest version, ask customer to follow "Section 1: Before starting to clone" above,
and rerun adpreclone.pl steps.

Once this adpreclone.pl step has been completed successfully, all the java .class files under the
following directories should be identical to those under $JAVA_TOP/oracle :

o RDBMS $ORACLE_HOME/appsutil/java/oracle
o RDBMS $ORACLE_HOME/appsutil/clone/jlib/java/oracle
o $COMMON_TOP/clone/jlib/java/oracle

If they are not, ensure to follow the pre-req AutoConfig steps, and rerun adpreclone on all DB and
Apps Tier nodes.

Highly recommended: It is highly recommended customers rename any existing clone stage
area, and allow RapidClone to create a new one.  This should avoid any known issues that are
caused by old redundant files from a previous clone.

On the DB Tier:-
 Rename RDBMS $ORACLE_HOME/appsutil to $ORACLE_HOME/appsutil_old
 On the Apps Tier, run "perl $AD_TOP/bin/admkappsutil.pl"
 Copy the appsutil.zip to the RDBMS $ORACLE_HOME and unzip
 Copy the Context file from RDBMS $ORACLE_HOME/appsutil_old to the new
$ORACLE_HOME/appsutil
 Run AutoConfig on the DB Tier
 Do the "Prepare Source system" steps i.e "perl adpreclone.pl dbTier"

On the Apps Tier:-


 Rename $COMMON_TOP/clone to $COMMON_TOP/clone_old
 Rename 8.0.6 $ORACLE_HOME/appsutil to $ORACLE_HOME/appsutil_old
 Rename iAS $ORACLE_HOME/appsutil to $ORACLE_HOME/appsutil_old
 Do the "Prepare Source system" steps i.e "perl adpreclone.pl appsTier"

Section 3. Copy the files to the Target system

When copying files to the Target, ensure the application tier files copied to the target system are
owned by the target APPLMGR user, and that the database tier files are owned by the ORACLE
user. 
When copying the datafiles, ensure the DB is shutdown cleanly prior to the copy. 
If there is any DB activity while the datafiles are copied, the clone will fail to recreate the control
files with error:-

ORA-01194: file <filename> needs more recovery to be consistent

If a clone must be performed using a hot backup, then follow the alternative cloning steps in
Appendix B of Note:230672.1.

Section 4. Configure Target system

Rapid Clone Commands:

DB Tier :

> perl adcfgclone.pl dbTier

Apps Tier:

> perl adcfgclone.pl appsTier

The configuration phase will reconfigure the copied instance after gathering the required
information.

 adchkutl.sh 
The first step performed is the OS utility check (adchkutl.sh). 
This ensures make, cc, ld and ar executables are available in the PATH. 
 CloneContext.class 
This will create the Target Context file from the values entered on the screen.
For a full list of the questions, see Note:216664.1

All the questions, values entered, results of the port availability check etc will be logged in
a log file located in same location as the adcfgclone.pl script:-

dbTier : $ORACLE_HOME/appsutil/clone/bin
appsTier(s) : $COMMON_TOP/clone/bin

Log files for this phase:-


dbTier: $TMP/CloneContext_xxxxxx.log

appsTier(s): $TMP/CloneContext_xxxxxx.log

Both Tiers: $TMP/adclonectx.err

Note: With earlier RapidClone code, the logs were generated as follows:-

dbTier: $ORACLE_HOME/appsutil/clone/bin/CloneContext_xxxxxx.log

appsTier(s): $COMMON_TOP/clone/bin/CloneContext_xxxxxx.log

Both Tiers: $TMP/adclonectx.err

If any of the variables in the Target system Context file appear to be


incorrect, then check this log file to see how the incorrect value
arose.

 ApplyDBTier.class/ApplyAppsTier.class 
Once the XML is created, or passed as a parameter on the command line, then the
configuration phase begins. 
This part will instantiate all the templates created during the preparation phase under:

$ORACLE_HOME/appsutil/template.

Templates to instantiate are located in driver file

$ORACLE_HOME/appsutil/driver/instconf.drv

Log files for this phase:-

dbTier: $ORACLE_HOME/appsutil/log/<Target Context


Name>/ApplyDBTier_xxxxxx.log
appsTier(s): $APPL_TOP/admin/<Target Context
Name>/log/ApplyAppsTier_xxxxxx.log
 Relink the ORACLE_HOME(s) 
The executables in the ORACLE_HOME(s) will be relinked during the configuration
phase. 
The commands used, and results of the relinking will displayed in log file :

$ORACLE_HOME/install/make.log
 Create the Control files (DB Tier only) 
Once the templates are instantiated, and the ORACLE_HOME is relinked, then the
control files can be recreated. 
The templates used here are located in

$ORACLE_HOME/appsutil/clone/data/stage/adcrdb.zip

The files in this zip file are used to create a SQL file called
adcrdbclone.sql

This above SQL script is called from a shell script

adcrdb.sh.

Both of the above  scripts can be found under

$ORACLE_HOME/appsutil/install/$CONTEXT_NAME

If there are any problems creating the control files, then check the log files :

$ORACLE_HOME/appsutil/log/$CONTEXT_NAME/adcrdb_<SID>.txt
$ORACLE_HOME/appsutil/log/$CONTEXT_NAME/ApplyDBTier_xxxxxx.log

If this error is encountered:-

 ORA-01194: file <filename> needs more recovery to be consistent

refer to "Section 3 - Copy the files to the Target system" above on why this problem occurs.

 AutoConfig 
The next phase will run AutoConfig using use the usual templates and drivers associated
with AutoConfig on db or appsTier. 
The following log files will contain the information on the results of running AutoConfig

$ORACLE_HOME/appsutil/log/$CONTEXT_NAME/ApplyDBTier_xxxxxx.log
$APPL_TOP/admin/$CONTEXT_NAME/log/ApplyAppsTier_xxxxxx.log
 Update the oraInventory (OracleHomeCloner.class) 
Once the Target instance is configured, it will update the Global Inventory will the
locations of the new ORACLE_HOMES 
The global inventory is found by checking the Inventory Pointer file. 
This can be found as follows :

AIX and LINUX under : /etc/oraInst.loc


Other UNIX machines : /vat/opt/oracle/oraInst.loc
WINDOWS (Registry): HKEY_LOCAL_MACHINE\Software\Oracle\INST_LOC

This Inventory pointer points to the location of the Global Inventory.

The global inventory will be updated with the locations of the new iAS and RDBMS
ORACLE_HOMES

Any problems with this step will be detailed in the log files:-

<path to oraInventory>/logs/OracleHomeCloner_<MMDDHHMM>.log
<path to oraInventory>/logs/apps<Year>-<Mon>-<Day>-<Hour>-<Min>-<Sec>-
<AM/PM>.log

If there are problems with the Global Inventory refer to Note 295185.1 
References

NOTE:230672.1 - Cloning Oracle Applications Release 11i with Rapid Clone

 Related

Products

 Oracle E-Business Suite > Applications Technology > Lifecycle Management >
Oracle Applications Manager

Keywords

ADADDNODE.PL; ADCFGCLONE.PL; ADCLONE.PL; ADCLONECTX.PL;


ADCONFIG.SH; ADMKAPPSUTIL.PL; ADPRECLONE.PL;
CLONECONTEXT.JAVA
Errors

ORA-1194

Back to top

Rate this document 

Das könnte Ihnen auch gefallen