Oracle EBS R12.1.3 – Application Level Patching Guide

 

 Oracle EBS R12.1.3 – Application Level Patching Guide

Overview

This guide details the step-by-step procedure for applying application-level patches in Oracle E-Business Suite Release 12.1.3. This process ensures the EBS application is updated without disrupting services or compromising system stability.


Prerequisites

Before you begin:

  • Ensure the Database and Listener are up and running.

  • Backup your EBS environment (DB, APP, and customizations if applicable).

  • Set necessary environment variables ($APPL_TOP, $AD_TOP, $ADMIN_SCRIPT_HOME, etc.).

  • Identify patch number and download it from My Oracle Support (MOS).


 Step 1: Stop Application Services

Navigate to your administration scripts directory:

cd $ADMIN_SCRIPT_HOME
./adstpall.sh apps/<apps_password>

🔸 Ensure the database and listener remain UP.


Step 2: Enable Maintenance Mode

Maintenance mode prevents users from logging in during patching.

cd $AD_TOP/12.0.0/bin
./adadmin

Follow the prompts:

  1. Enter log file name (e.g., 111.log)

  2. Choose:

    5. Change Maintenance Mode
    1. Enable Maintenance Mode
    

You’ll see:

Successfully enabled Maintenance Mode.

Confirm it's enabled before proceeding.


 Step 3: Apply the Patch

  1. Go to the patch directory:

    cd $AD_TOP/bin
    ./adpatch
    
  2. When prompted:

    • Directory: /u01/oracle/apps/patches/dev/8919491

    • Driver file: u18898449.drv

AutoPatch will apply the patch and update the necessary files and database objects.


Step 4: Disable Maintenance Mode

Once the patch is applied:

./adadmin

Then:

5. Change Maintenance Mode
2. Disable Maintenance Mode

Step 5: Start Application Services

cd $ADMIN_SCRIPT_HOME
./adstrtal.sh apps/<apps_password>

 Step 6: Verify Patch Level

Check current product patch levels:

SELECT PATCH_LEVEL
FROM FND_PRODUCT_INSTALLATIONS
WHERE PATCH_LEVEL LIKE 'R12%';

Example:

R12.PJM.B.3
R12.PJI.B.3

Check AD code level:

SELECT PATCH_LEVEL
FROM FND_PRODUCT_INSTALLATIONS
WHERE PATCH_LEVEL LIKE 'R12.AD%';

Expected:

R12.AD.B.8

Check specific patch applied:

SELECT ad_patch.is_patch_applied('R12', -1, <PATCH_NUMBER>) FROM dual;

-- Example:
SELECT ad_patch.is_patch_applied('R12', -1, 32824367) FROM dual;

SQL Patch Registry:

SELECT * FROM dba_registry_sqlpatch WHERE patch_id = '22322938';

Additional Patch Object Verification

To verify if specific objects are updated:

strings -a $INV_TOP/forms/US/POXWPA5B.pls | grep '$Header'
find $PO_TOP -name "POXWPA5B.pls"
grep -i "\$Header" $PO_TOP/patch/115/sql/POXWPA5B.pls

Check patch logs:

cd $APPL_TOP/admin/$TWO_TASK/log

 Optional: XDF Patch Application (when needed)

Some patches require XDF (XML Data Fix) application.

export AD_APPS_JDBC_URL="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)
(HOST=osdcebsdb.ebsdb.prodebs.oraclevcn.com)(PORT=1521)))(CONNECT_DATA=(SID=EBS)))"

java oracle.apps.fnd.odf2.FndXdfCmp applsys afteraa apps afteraa 
thin osdcebsdb.ebsdb.prodebs.oraclevcn.com:1521:EBS index 
$FND_TOP/patch/115/xdf/wf_directory_partitions.xdf $FND_TOP/patch/115/xdf/xsl changedb=n

Or use admsi.pl for XDF-based instructions:

perl $AD_TOP/bin/admsi.pl -patch_top=/home/oracle/PATCH/33513708 -appspass=<apps_password>

 Summary

Step Task
1 Stop App Tier
2 Enable Maintenance Mode
3 Apply Patch using adpatch
4 Disable Maintenance Mode
5 Start Services
6 Verify Patch Levels

 Notes

  • Always test patches in a non-production instance first.

  • Keep the patch logs and adpatch logs for audit and rollback reference.

  • Use admsi.pl and FndXdfCmp only when directed by Oracle patch documentation.



Comments

Popular posts from this blog

Configure Oracle Database Vault Realms

Configure Transparent Database Encryption (TDE) in Oracle CDB

Cloning Oracle E-Business Suite 12.2.11: RMAN + Rapid Clone