Monthly Archives: November 2015

What’s new in R12.2 patching

What’s new in 12.2 Patching?

Oracle E-business Suite Release 12.2 has come up with new online patching feature, which is performed by AD Online Patching utility ‘ADOP’.

As with earlier releases we have a flexibility to run patches in online mode using options=hotpatch, but not all patches can be applied with this option.

12.2 online patching model is designed such a way, It can reduce the downtime to minimum. To get into more detail how Online Patching works, I will run through
Patch cycle.

Before that, let me talk about two file edition mode which is introduced in 12.2 and base for understanding the patching.

Patch Edition – Patch edition exists when patching is in progress.
Run Edition – Default database edition and Online users connect to this mode.

To check the file edition run as below

Prepare: A copy is made of Running system or Production code. Create a New Patch Edition
Apply: Apply patch on the Patch edition mode.
Finalise: Prepare system ready for cutover, compile invalids.
Cutover: Restart the Application on Patch edition, Bounce the application, where we experience the downtime.
Cleanup: Removes obsolete code and data.
Abort: Terminate a patching cycle.
Fs_clone: Sychronize the patch file system with run file system

The picture gives more understanding about the flow in Patching cycle


During the entire process, database remains open. With Online Patching, we can apply one-off, Roll-up patches, Consolidated patches, Security patches.

How can we apply the patches using ADOP is explained here,
As the pre-requisite tasks, Please check the the FILE_EDITION.

Set the environment to RUN Edition
$ source /EBSapps.env run
verify the edition by echo $FILE_EDITION
Download the patch to patch directory ‘$PATCH_TOP’
unzip the patch
# Prepare for patching
$ adop phase=prepare
# Apply patch
$adop phase=apply patches=
# Apply customizations to Patch edition
$ . /EBSapps.env patch
@Custom scripts
# Finalise Patch Application
$adop phase=finalise
# Perform cutover
$ adop phase=cutover
$ . /EBSapps.env run

# Perform cleanup:
$ adop phase=cleanup