Applying the 10.2.0.4.1 Patch Set Update (PSU)
Posted by John Hallas on July 28, 2009
Oracle have now provided a Patch Set Update (PSU) policy in conjunction with the existing Critical Patch Updates. Both patches will be delivered quarterly (Jan,Apr,Jul,Oct) and the PSU will contain the CPU so it is a bit of no-brainer to move to PSU patching if you already perform CPU patching.
The core statement around PSU is mentioned in Note 854428.1 is
PSU patches are intended to be low-risk. This is accomplished by controlling content and thorough testing. Included in the criteria for the bug fixes in the Database PSU are:
- Critical technical issues with fixes that may affect a large number of customers and that are already proven in the field
- Critical Patch Update fixes
PSU patches do not include any of the following:
- Changes that require re-certification (for example, fixes that cause optimizer plan changes)
- Fixes that require configuration changes
Each PSU has limited new content, typically between 50 and 100 new bug fixes.
PSU patches are guaranteed to be rolling RAC installable.
Available on most platforms (which is nice for those of us not on Linux) except Windows. Patches will be available but as part of the CPU bundles.
The patches are also cumulative so PSU 10.2.0.4.1 is the current one and when 10.2.0.4.2 is available then that can be applied on top.
As I had a clean Oracle 10.2.0.4 with the latest CPU set applied I added the PSU and here are a few notes.
You need to get the latest Opatch installation which is version 10.2.0.4.07 and is patch 680880. Copy it to the OH folder and unzip it from there, updating the existing Opatch binaries.
After ensuring that the correct OH and OPatch folder are in your path then check the opatch version
/home/oracle $opatch version Invoking OPatch 10.2.0.4.7 OPatch Version: 10.2.0.4.7 OPatch succeeded.Unzip the CPU patch 8576156 and run the opatch pre-requisite check
I have shown all my actions here and note that the pre-req command is different from that in the documentation where the -ph parameter is referred to as -phBaseDir
opatch prereq CheckConflictAgainstOHWithDetail -ph ./8576156_Jul2009PSU
It then gives a list of patches to be applied, patches that will be rolled back and no longer required patches (superceded by those in this PSU). Note that you may need to get patches that are required but not available in the PSU patch.
cd /shared/oracle/rdbms_patches/PSU patches/10.2.0.4/ README.html README.txt custom etc files patchmd.xml psu_root.sh opatch prereq CheckConflictAgainstOHWithDetail -ph ./8576156_Jul2009PSU Invoking OPatch 10.2.0.4.7 Oracle Interim Patch Installer version 10.2.0.4.7 Copyright (c) 2009, Oracle Corporation. All rights reserved. PREREQ session Oracle Home : /app/oracle/product/10.2.0.4/db_1 Central Inventory : /app/oracle/oraInventory from : /var/opt/oracle/oraInst.loc OPatch version : 10.2.0.4.7 OUI version : 10.2.0.4.0 OUI location : /app/oracle/product/10.2.0.4/db_1/oui Log file location : /app/oracle/product/10.2.0.4/db_1/cfgtoollogs/opatch/opatch2009-07-28_19-05-21PM.log Patch history file: /app/oracle/product/10.2.0.4/db_1/cfgtoollogs/opatch/opatch_history.txt Invoking prereq "checkconflictagainstohwithdetail" ZOP-40: The patch(es) has conflicts/supersets with other patches installed in the Oracle Home (or) among themselves. Prereq "checkConflictAgainstOHWithDetail" failed. Summary of Conflict Analysis: Patches that can be applied now without any conflicts are : 8576156 Following patches are not required, as they are subset of the patches in Oracle Home or subset of the patches in the given list : 8309642, 8309639, 8309637, 8309632, 8309623, 8309592, 8309587, 8290506, 7609058, 7609057, 7375617, 7375613, 7375611, 7197583, 7155254, 7155253, 7155252, 7155251, 7155250, 7155249, 7155248 Following patches will be rolled back from Oracle Home on application of the patches in the given list : 8309642, 8309639, 8309637, 8309632, 8309623, 8309592, 8309587, 8290506, 7609058, 7609057, 7375617, 7375613, 7375611, 7197583, 7155254, 7155253, 7155252, 7155251, 7155250, 7155249, 7155248Once all pre-reqs are met then run opatch apply from the PSU patch directory
Afterwards run the psu_root.sh script from the patch installation directory (as root).
If you do not run psu_root.sh script which changes the permissions on the binary extjob, executable jobs can fail with the following error:
ORA-27369: job of type EXECUTABLE failed with exit code: ...Note that this step has no impact on the implementation of the PSU security fixes; it only affects the successful execution of the Job Scheduling system. That is, if you do not run psu_root.sh when you should, or if you run psu_root.sh but fail to run it as root, the PSU security fixes are still installed; however, the Job Scheduling system will fail. The psu_root.sh needs permission changes and does not work that well so it is easier to get sys admins to just chmod the permissions detailed in the shell script.
All in all pretty seamless. Note that I did not have a database to patch but if I did then the two post-installation steps are to run the catbundle scripts and recompile views
For each database instance running on the Oracle home being patched, connect to the database using SQL*Plus. Connect as SYSDBA and run the catbundle.sql script as follows:
cd $ORACLE_HOME/rdbms/admin sqlplus /nolog SQL> CONNECT / AS SYSDBA SQL> STARTUP SQL> @catbundle.sql psu apply SQL> QUITThe README.txt in the install directory details the recompilation of views but it is not too difficult and only needs to be done once, no matter how many PSU sets are applied.
Adrian Angelov said
Hi jhdba,
thanks for the useful info.
We’re on the way to patch to 10.2.0.4.1(from 10.2.0.2). So far, we try to figure out any important fixes on top of 10.2.0.4.0 that are not included in the PSU nor fixed on top of 10.2.0.4.1
For example, such bug is “Bug 7602341 – 10g Database crash wih 11g ASM ORA-00600 [kffmUnlock_3]” which can lead to primary db(10g) unexpected shutdown during ASM(11g) rebalance operation. Bug 7602341 can occur on 10.2.0.4.0 and there is one-off patch provided. This is not included in the PSU, so we have to :
1. Install 10.2.0.4.0
2. Install one-off patches for such bugs(important, but not included in the PSU nor fix provided on top of 10.2.0.4.1 yet)
3. Check for any incompatabilities between one-off patches and the PSU
3. Install PSU e.g. patch to 10.2.0.4.1
4. Install any important patches on top of 10.2.0.4.1
and my question …
Are you aware of any important 10.2.0.4.0 patches that are not included in the PSU nor fix provided for them for 10.2.0.4.1?
Thanks in advance
John Hallas said
Good question Adrian and I have wondered about it myself. All patches cannot be included in the PSU so it is a bit unclear as to what is actually included.
The only way is to use opatch lsineventory to determine what is in before and after the PSU patch. When you run precheck routine it does show a nice list of which patches will be added and removed (see the blog entry for an example).
Good call re Bug 7602341 as I need to get that installed myself as the only reason for the 10.2.0.4 installation is to try a database with 11g ASM to see if we get any sort of disk throughput increase on a Peoplesoft database (currently 10.2.0.3 and cooked storage). Now doubt that will be my next blog subject.
John
Adrian Angelov said
Hi John,
thanks for the feedback.
I’ve started to check relevant bugs described in 10.2.0.4 Patch Set – Availability and Known Issues
Doc ID: 555579.1
‘General Alerts / Issues’ section contains a reference to bug: 7155655+ Wrong query results possible from predicate push
and corresponding bug note: Bug 7155655 – Wrong query results possible from predicate push Doc ID: 7155655.8
states that the bug is fixed in
* 10.2.0.4.1 (Patch Set Update)
Unfortunately, I’m not able to get it using opatch lsinventory on a 10.2.0.4.1 test home:
Invoking OPatch 10.2.0.4.7
Oracle Interim Patch Installer version 10.2.0.4.7
Copyright (c) 2009, Oracle Corporation. All rights reserved.
Oracle Home : /u01/app/oracle/product/102041
Central Inventory : /u01/app/oracle/oraInventory
from : /etc/oraInst.loc
OPatch version : 10.2.0.4.7
OUI version : 10.2.0.4.0
OUI location : /u01/app/oracle/product/102041/oui
Log file location : /u01/app/oracle/product/102041/cfgtoollogs/opatch/opatch2009-08-02_1 3-27-18PM.log
Patch history file: /u01/app/oracle/product/102041/cfgtoollogs/opatch/opatch_history.txt
Lsinventory Output file location : /u01/app/oracle/product/102041/cfgtoollogs/opatch/lsi nv/lsinventory2009-08-02_13-27-18PM.txt
——————————————————————————–
Installed Top-level Products (2):
Oracle Database 10g 10.2.0.1.0
Oracle Database 10g Release 2 Patch Set 3 10.2.0.4.0
There are 2 products installed in this Oracle Home.
Interim patches (2) :
Patch 8576156 : applied on Wed Jul 29 16:55:55 CEST 2009
Unique Patch ID: 11423320
Created on 15 Jun 2009, 06:26:41 hrs PST8PDT
Bugs fixed:
7257770, 7363767, 6941717, 6418420, 8267348, 7835247, 7710551, 7592346
7247217, 6724797, 8328954, 7936993, 7331867, 7552067, 5879114, 6681695
8344348, 7272297, 7136866, 7661251, 7196894, 6265559, 7013124, 6954829
5259835, 6500033, 7432601, 7196532, 8568395, 8309587, 8534387, 6509115
8568397, 8568398, 5147386, 7375644, 6490140, 6052226, 8331466, 5623467
6070225, 7396409, 6638558, 7424804, 7038750, 6817593, 7553884, 6870937
7219752, 7278117, 6469211, 6882739, 7527650, 8309592, 5404871, 8373286
6678845, 6903051, 7936793, 7155248, 7155249, 6403091, 7552082, 6711853
8304589, 8568402, 8568404, 8568405, 5756769, 6327692, 7460818, 6268409
6343150, 6923450, 6972843, 7643632, 6145177, 8230457, 6800507, 7027551
6778714, 6200820, 8347704, 7155250, 7155251, 7155252, 6645719, 7155253
7393804, 8292378, 7155254, 6219529, 6683178, 6650256, 8227091, 8340379
7276960, 7528105, 5863926, 6378112, 7123643, 5126719, 6596564, 6413089
6851438, 7036453, 7494333, 7315642, 8340383, 8247855, 6451626, 8340387
6926448, 7600026, 6679303, 6874522, 7197583, 7175513, 6960489, 8576156
7341598, 6797677, 7008262, 8342923, 5895190, 7150470, 7593835, 7356443
7477934, 7044551, 6733655, 6799205, 6980597, 6084232, 7499353, 6014513
4695511, 8227106, 7140204, 7298688, 5747462, 7254987, 7197445, 5348308
7937113, 7569205, 7693128, 6120004, 6163771, 6051177, 6181488, 6858062
7189645, 6345573, 7033630, 7378661, 7309458, 7457766, 7378735, 8290506
6658484, 8309623, 7599944, 8324577, 7125408, 6840740, 7257461, 6987790
7568556, 6919819, 6804746, 6955744, 7375611, 8268054, 6988017, 7375613
8344399, 6074620, 7149004, 7340448, 8283650, 8362683, 7375617, 8251247
7238230, 6599920, 7552042, 8287504, 5386204, 6452375, 6352003, 6976005
6833965, 7136489, 7612639, 6610218, 7606362, 6392076, 7043989, 5476236
8309632, 7609057, 7609058, 6870047, 8309637, 6374297, 8309639, 6193945
4693355, 7039896, 7432514, 7330909, 6952701, 7190270, 8287155, 6752765
7189447, 6802650, 8239142, 6615740, 7155655, 4637902, 7159505, 5868257
7345904, 8309642, 6917874, 7173005, 6994160, 7691766, 6919764, 7523787
7385253, 6455659
Patch 7602341 : applied on Wed Jul 29 16:36:59 CEST 2009
Unique Patch ID: 11092254
Created on 16 Mar 2009, 20:42:48 hrs PST8PDT
Bugs fixed:
7602341
——————————————————————————–
OPatch succeeded.
I hope it’s a rare type of Oracle Support’s error affecting only this bug
Going to log a Service Request tomorrow morning.
Adrian Angelov said
Oops , my failure … using Notepad search tool
grep finds it just ok. Please, ignore my previous post.
Rahul said
Hi,
Very very nice article with important knowledge sharing. Wonderfull work done. Thanks a lot for sharing great work.
PSU for 11.1.0.7.1 « Oracle DBA – A lifelong learning experience said
[...] Oracle DBA – A lifelong learning experience Just another WordPress.com weblog « Oracle Performance Management with Gaja Vaidyanatha PSU for 11.1.0.7.1 October 29, 2009 One of the most read entries on this site is about the PSU release for 10.2.0.4 http://jhdba.wordpress.com/2009/07/28/applying-the-10-2-0-4-1-patch-set-update-psu/ [...]
2010 in review « Oracle DBA – A lifelong learning experience said
[...] files automaticallyORA-27054 when using RMAN to NAS/NFS disks11g – library cache mutex X – known bugApplying the 10.2.0.4.1 Patch Set Update (PSU)Identifying applied PSU patches « Overview of OEM [...]