Home » » Applying Applications Patch Using adpatch

Applying Applications Patch Using adpatch

Written By Srikrishna Murthy Annam on Wednesday, October 14, 2009 | 9:42 AM

Applying Applications Patch Using adpatch:


Adpatch is a utility we use to apply application patches.Patches are used either to fix some issue or to intoroduce a new feature. There are different types of patches and we can explain different types of patches in some other article. Let us know focus on how to apply the patch to applications.

Following are the basic steps we follow to apply the patch
1) prepatch analysis
2) pre health checks
3) shutdown MT services
4) Enable Maintenance mode
5) Apply patch using adpatch
6) Disable Maintenance mode
7) Start all MT services
8 ) Perform any post patch steps
9) Post health checks

Prepatch analysis :
First download correct patch for your platform to local machine and unzip the patch. Review the readme file provided with patch and check that all the pre-requisite patches are applied to the system. If there is any pre-required patches to be applied , we will list those patches also to apply to the system. And finally we come to the conclusion with the list of all the patches to be applied.

Pre health checks :
It is important to do pre-health checks to cross verify the impact of patch comparing the post health checks with pre health checks.
Check the status of the following components on all MT nodes :
- Conc Manager status
- Forms status
- URLs check
- Opmn Processes status
- MWA status if configured
- Discoverer status
- Record invalids
- Record workflow status
- Check if there are any NLS Lang available for the patch

Use the following queries ...
SQL> create table apps.invalids_askm_bak tablespace bkpd as (select owner,object_name,object_type from dba_objects where status='INVALID');
SQL> select fsc.COMPONENT_NAME,fsc.STARTUP_MODE,fsc.COMPONENT_STATUS from APPS.FND_CONCURRENT_QUEUES_VL fcq, fnd_svc_components fsc where fsc.concurrent_queue_id = fcq.concurrent_queue_id(+) order by COMPONENT_STATUS , STARTUP_MODE , COMPONENT_NAME;
SQL> select nls_language, language_code, installed_flag from apps.fnd_languages where installed_flag in ('I','B');
SQL> select * from apps.ad_bugs where bug_number='&bug';

Shutdown MT services :
Use the adstpall.sh script to stop all MT services. Wait for some time to make sure that all the processes are down. Kill if there are any defunct processes and runaway processes.

Enable Maintenance mode :
SQL> @$AD_TOP/patch/115/sql/adsetmmd.sql ENABLE
SQL> select fnd_profile.value('APPS_MAINTENANCE_MODE') from dual; --> to check

Apply patch using adpatch:
Now upload the patch zip file to any temporary directory and unzip the patch. Move into the unzipped directory. And then apply the patch ...
adpatch defaultsfile=$APPL_TOP/admin/$TWO_TASK/default.txt logfile=patch.log \
patchtop=$APPL_TOP/patches/xxxxxxx options=noautoconfig,nocompilejsp,nocompiledb workers=8 \
driver=xxxxxxxx.drv

Answer to the prompts given by the adpatch and wait till you get the message that "autopatch is complete". Then review the log files to check if there are any error in the logfiles. Logfiles are located in  $APPL_TOP/admin/<SID>/log.
Apply NLS patches if any in the same way.

Disable Maintenance mode :
SQL> @$AD_TOP/patch/115/sql/adsetmmd.sql DISABLE
SQL> select fnd_profile.value('APPS_MAINTENANCE_MODE') from dual; --> to check

Start all MT services :

Start all the MT services using adstrtal.sh script.

Perform any post patch steps :
Patch readme file contains the details if there are any post patch steps to be performed. Complete all the post patch steps.

Post health checks :
Perform all the post health checks and compare it with pre patch health checks. Compile new invalids if any. Contact Oracle Support if you have any problem in applying the patch and provide all the patch logfiles to the support.
Share this article :

Related Articles By Category



Post a Comment

Thank you for visiting our site and leaving your valuable comment.

 
Support :
Copyright © 2013. askMLabs - All Rights Reserved
Proudly powered by Blogger