Monday

Merging Patches in E-Business Suite

One method to decrease the amount of time it takes to apply a large number of patches is to use AD Merge. AD Merge allows you to combine multiple patches into a single patch. If you have applied multiple patches separately in the past, you've probably noticed that some steps may be repeated for each patch. For example, autoconfig, compiling JSP or database objects, etc may be executed automatically multiple times. You can pass parameters in to adpatch to avoid and perform those tasks manually at the end. As well, even tho its minor, just running through the adpatch prompts for each patch adds up.. (I'll talk about defaultsfile in another post.)

There are some restrictions with AD Merge, it can't be used to merge patches of different releases, platforms or parallel modes.

The first step is to download the patches and uncompress them into a single directory. For the following example I am using the July Security patch release:

oravis@myserver=> ls SRC
6520998 6884665 p6845529_11i_GENERIC.zip
6627387 p6520998_11i_GENERIC.zip p6884665_11i_GENERIC.zip
6845529 p6627387_11i_GENERIC.zip

Execute admrgpch. (I created a directy DEST at the same level as SRC above). The format i'm using below is: -s <source> -d <desintation> -logfile <name> -merge_name <default is merged, so name it appropriately>:

oravis@myserver=> 
admrgpch -s SRC -d DEST -logfile JUL09_merge.log -merge_name jul09cpu_merge


Executing the merge of the patch drivers
-- Processing patch: SRC/6520998
-- Done processing patch: SRC/6520998

-- Processing patch: SRC/6627387
-- Done processing patch: SRC/6627387

-- Processing patch: SRC/6845529
-- Done processing patch: SRC/6845529

-- Processing patch: SRC/6884665
-- Done processing patch: SRC/6884665



Copying files...

100% complete. Copied 9 files of 9...

Character-set converting files...

4 unified drivers merged.

Patch merge completed successfully

Please check the log file at JUL09_merge.log.


oravis@myserver=> ls DEST
6520998_README.html b6520998.ldt fnd
6520998_README.txt b6627387.ldt ibe
6627387_README.html b6845529.ldt j6520998_mwa.zip
6627387_README.txt b6884665.ldt j6627387_ibe.zip
6845529_README.html f6520998.ldt j6884665_frm.zip
6845529_README.txt f6627387.ldt jcopy
6884665_README.html f6845529.ldt u_jul09cpu_merge.drv
6884665_README.txt f6884665.ldt

Finally review the merge log file and verify that there were no errors. I've read that you shouldn't merge AD or FND patches but I can't find anything official on Metalink or in the documentation. AD Merge has only failed on me twice. Once it failed during the merge and another time during the application of the merged patch. When applying the patch with adpatch, change directory into DEST and when prompted use u_jul09cpu_merge.drv for the driver name. Don't forget to perform any post-patch activities that may be required for each patch!

Thats it, merging patches is pretty simple. It has worked great for me in the past and even for small patching efforts like the CPU release above, I use it. Even tho they are pretty quick patches it beats having to apply each one manually.

1 comment:

Unknown said...
This comment has been removed by the author.