我们在使用opatch数据库补丁管理工具时可能碰到这样那样的问题,那么opatch工具是否存在一些调试选项以便我们了解更多的信息呢?同OUI工具一样,opatch存在一个debug选项,使用该选项我们仅需要设置OPATCH_DEBUG环境变量为TRUE就可以了,如:
[oracle@rh2 OPatch]$ export OPATCH_DEBUG=TRUE

[oracle@rh2 OPatch]$ ./opatch lsinventory
ORACLE_HOME is set at OPatch invocation
Machine Info: Linux rh2.oracle.com 2.6.32-100.0.19.el5 #1
SMP Fri Sep 17 17:51:41 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux

_osArch is i386
_javaVMSpecVersion is 1.0
_javaVMSpecVendor is Sun Microsystems Inc.
_javaVMSpecName is Java Virtual Machine Specification
_javaVMVendor is Sun Microsystems Inc.
_javaJRESpecVersion is 1.4
_javaJRESpecVendor is Sun Microsystems Inc.
_javaJRESpecName is Java Platform API Specification
_javaSupportedClassVersion is 48.0
OPatch compiled with major version: 0, minor version: 0
_osArch (from OCM API) is i386
/s01/db_1/jdk/bin/java  -mx96m -cp ./ocm/lib/emocmutl.jar:./ocm/lib/emocmclnt.jar:/s01/db_1/oui/jlib/OraInstaller.jar:
/s01/db_1/oui/jlib/OraPrereq.jar:/s01/db_1/oui/jlib/share.jar:/s01/db_1/oui/jlib/srvm.jar:
/s01/db_1/oui/jlib/orai18n-mapping.jar:/s01/db_1/oui/jlib/xmlparserv2.jar:./jlib/opatch.jar:./jlib/opatchutil.jar:
./jlib/opatchprereq.jar:./jlib/opatchactions.jar:./jlib/opatchext.jar:
./jlib/opatchfmw.jar: -DOPatch.ORACLE_HOME=/s01/db_1 -DOPatch.DEBUG=true
-DOPatch.RUNNING_DIR=. -DOPatch.MW_HOME= -DOPatch.WL_HOME=
-DOPatch.COMMON_COMPONENTS_HOME=   oracle/opatch/OPatch lsinventory

/* 以上debug信息可以说明opatch工具需要用到Oracle软件自带的JRE */

Invoking OPatch 11.2.0.1.3

Oracle Interim Patch Installer version 11.2.0.1.3
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

OPatchSession::parse() on "lsinventory",

Argument is "lsinventory"
 Add commands for Help
 add command "apply"
 add command "napply"
 add command "rollback"
 add command "nrollback"
 add command "lsinventory"
 add command "lsinv"
 add command "query"
 add command "util"
 add command "prereq"
 add command "version"
 add command "-help"
 add command "-help -fmw"
 Add supported commands for validation
 add command "apply"
 add command "rollback"
 add command "lsinv"
 add command "lsinventory"
 add command "query"
 add command "util"
 add command "prereq"
 add command "version"
 add command "napply"
 add command "nrollback"
 add command "-fmw"
 Not a command that can be mapped to Util Session.
CmdLineParser::initRuntimeOptions()
 Checking on class oracle.opatch.opatchutil.CmdLineOptions$StringArguments
 Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$StringArguments
 There are 7 fields defined in this class.
   adding option "fp"
   adding option "dp"
   adding option "fr"
   adding option "dr"
   adding option "mp"
   adding option "phbasedir"
   adding option "phbasefile"
 Checking on class oracle.opatch.opatchutil.CmdLineOptions$BooleanArguments
 Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$BooleanArguments
 There are 2 fields defined in this class.
   adding option "delay_link"
   adding option "cmd_end"
 Checking on class oracle.opatch.opatchutil.CmdLineOptions$IntegerArguments
 Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$IntegerArguments
 There are 2 fields defined in this class.
   adding option "integerarg1"
   adding option "integerarg2"
 Checking on class oracle.opatch.opatchutil.CmdLineOptions$StringtegerArguments
 Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$StringtegerArguments
 There are 5 fields defined in this class.
   adding option "stringtegerarg1"
   adding option "stringtegerarg2"
   adding option "ps"
   adding option "mp"
   adding option "xmlinput"
 Checking on class oracle.opatch.opatchutil.CmdLineOptions$DoubleArguments
 Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$DoubleArguments
 There are 2 fields defined in this class.
   adding option "doublearg1"
   adding option "doublearg2"
 Checking on class oracle.opatch.opatchutil.CmdLineOptions$RawStringArguments
 Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$RawStringArguments
 There are 1 fields defined in this class.
   adding option "cmd"
CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchutil.OUSession"
  initializing String option 0, fp
  initializing String option 1, dp
  initializing String option 2, fr
  initializing String option 3, dr
  initializing String option 4, mp
  initializing String option 5, phbasedir
  initializing String option 6, phbasefile
 done init. String arg.
  initializing Boolean option 0, delay_link
  initializing Boolean option 1, cmd_end
 done init. Boolean arg.
  initializing Integer option 0, integerarg1
  initializing Integer option 1, integerarg2
 done init. Integer arg.
  initializing StringTeger option 0, stringtegerarg1
  initializing StringTeger option 1, stringtegerarg2
  initializing StringTeger option 2, ps
  initializing StringTeger option 3, mp
  initializing StringTeger option 4, xmlinput
 done init. SringTeger arg.
  initializing Double option 0, doublearg1
  initializing Double option 1, doublearg2
 done init. Double arg.
  initializing RawString option 0, cmd
 done init. RawString arg.
CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchutil.OUSession", done.
CmdLineParser::initRuntimeOptions()
 Checking on class oracle.opatch.opatchprereq.CmdLineOptions$StringArguments
 Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$StringArguments
 There are 3 fields defined in this class.
   adding option "phbasedir"
   adding option "patchids"
   adding option "phbasefile"
 Checking on class oracle.opatch.opatchprereq.CmdLineOptions$BooleanArguments
 Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$BooleanArguments
 There are 2 fields defined in this class.
   adding option "booleanarg1"
   adding option "booleanarg2"
 Checking on class oracle.opatch.opatchprereq.CmdLineOptions$IntegerArguments
 Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$IntegerArguments
 There are 2 fields defined in this class.
   adding option "integerarg1"
   adding option "integerarg2"
 Checking on class oracle.opatch.opatchprereq.CmdLineOptions$StringtegerArguments
 Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$StringtegerArguments
 There are 2 fields defined in this class.
   adding option "stringtegerarg1"
   adding option "stringtegerarg2"
 Checking on class oracle.opatch.opatchprereq.CmdLineOptions$DoubleArguments
 Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$DoubleArguments
 There are 2 fields defined in this class.
   adding option "doublearg1"
   adding option "doublearg2"
CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchprereq.PQSession"
  initializing String option 0, phbasedir
  initializing String option 1, patchids
  initializing String option 2, phbasefile
 done init. String arg.
  initializing Boolean option 0, booleanarg1
  initializing Boolean option 1, booleanarg2
 done init. Boolean arg.
  initializing Integer option 0, integerarg1
  initializing Integer option 1, integerarg2
 done init. Integer arg.
  initializing StringTeger option 0, stringtegerarg1
  initializing StringTeger option 1, stringtegerarg2
 done init. SringTeger arg.
  initializing Double option 0, doublearg1
  initializing Double option 1, doublearg2
 done init. Double arg.
CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchprereq.PQSession", done.
 reqVer For using getEnv() = 10.2.0.4.0
 curVer = 10.2.0.4.0
 Current Ver later than required? :false
 Current Ver equals required? :true
Checking EMDROOT using OUI's API...
CmdLineParser.processOPatchProperties() begins
CmdLineParser.processOPatchProperties() ends
OUIReplacer::runEnvScript() called
SystemCall:RuntimeExec(cmds, runDir): GOING to start thread to read Input Stream
SystemCall:RuntimeExec(cmds, runDir): Started thread to read Input Stream
SystemCall:RuntimeExec(cmds, runDir): GOING to start thread to read Error Stream
ReaderThread::run(): Stream InputStream about to be read
SystemCall:RuntimeExec(cmds, runDir): Started thread to read Error Stream
SystemCall:RuntimeExec(cmds, runDir): GOING into process.waitFor()
ReaderThread::run(): Stream ErrorStream about to be read
ReaderThread::run(): Stream ErrorStream reading completed
ReaderThread::run(): Stream InputStream reading completed
SystemCall:RuntimeExec(cmds, runDir): process.waitFor() is OVER
SystemCall:RuntimeExec(cmds, runDir): Error stream thread joined successfully
SystemCall:RuntimeExec(cmds, runDir): Input stream thread joined successfully
OUIReplacer::setKeyValue() called
OPatchSession::main()
Environment:
   OPatch.ORACLE_HOME=/s01/db_1
   oracle.installer.invPtrLoc=/etc/oraInst.loc
   oracle.installer.oui_loc=/s01/db_1/oui
   oracle.installer.library_loc=/s01/db_1/oui/lib/linux
   oracle.installer.startup_location=/s01/db_1/oui
   OPatch.PLATFORM_ID=
   os.name=Linux
   OPatch.NO_FUSER=
   OPatch.SKIP_VERIFY=null
   OPatch.SKIP_VERIFY_SPACE=null
   oracle.installer.clusterEnabled=false
   TRACING.ENABLED=TRUE
   TRACING.LEVEL=2
   OPatch.DEBUG=true
   OPATCH_VERSION=11.2.0.1.3
   Bundled OPatch Property File=properties
   Minimum OUI version: 10.2
   OPatch.PATH=/s01/db_1/bin:/bin:/usr/bin:/sbin:/usr/sbin
Stand-Alone home : false
   OPatch.MW_HOME=
   OPatch.WL_HOME=
   OPatch.COMMON_COMPONENTS_HOME=

Environment:
   OPatch.ORACLE_HOME=/s01/db_1
   oracle.installer.invPtrLoc=/etc/oraInst.loc
   oracle.installer.oui_loc=/s01/db_1/oui
   oracle.installer.library_loc=/s01/db_1/oui/lib/linux
   oracle.installer.startup_location=/s01/db_1/oui
   OPatch.PLATFORM_ID=
   os.name=Linux
   OPatch.NO_FUSER=
   OPatch.SKIP_VERIFY=null
   OPatch.SKIP_VERIFY_SPACE=null
   oracle.installer.clusterEnabled=false
   TRACING.ENABLED=TRUE
   TRACING.LEVEL=2
   OPatch.DEBUG=true
   OPATCH_VERSION=11.2.0.1.3
   Bundled OPatch Property File=properties
   Minimum OUI version: 10.2
   OPatch.PATH=/s01/db_1/bin:/bin:/usr/bin:/sbin:/usr/sbin
Stand-Alone home : false
   OPatch.MW_HOME=
   OPatch.WL_HOME=
   OPatch.COMMON_COMPONENTS_HOME=

Oracle Home       : /s01/db_1
Central Inventory : /s01/oraInventory
   from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.3
OUI version       : 10.2.0.4.0
OUI location      : /s01/db_1/oui
Log file location : /s01/db_1/cfgtoollogs/opatch/opatch2011-05-06_23-38-48PM.log

Patch history file: /s01/db_1/cfgtoollogs/opatch/opatch_history.txt

OUISessionManager::instantiate()
lockCentralInventory(): OUISessionManager::lockCentralInventory() will retry 0 times with 120-second interval to get an Inventory lock.
OUISessionManager::lockCentralInventory() try round # 1
OUISessionManager::setupSession()
OUISessionManager::setupSession() instantiates a OUIInventorySession obj.
OUISessionManager::setupSession() init. the session
OUISessionManager::setupSession() sets up READ-ONLY session
OUISessionManager::setupSession() done
OUISessionManager::lockCentralInventory() set up session OK
 reqVer = 10.2
 curVer = 10.2.0.4.0
 Current Ver later than required? :true
 Current Ver equals required? :false
OracleHomeInventory::createInventoryObj()
OracleHomeInventory::createInventoryObj() gets OUIInventorySession object
Locker::lock()
   calling lockCentralInventory()
OUISessionManager::getInventorySession()
Caller Details:
        Caller Name : OPatch    Caller Version : 11.2.0.1.3     Requested Read-only access : true       Oracle Home : /s01/db_1
OUISessionManager::register()
Registering the caller : OPatch
OracleHomeInventory::createInventoryObj() gets OUIInstallAreaControl object
OracleHomeInventory::createInventoryObj() gets OUIInstallInventory object
OracleHomeInventory::createInventoryObj() gets OUIOracleHomeInfo object
OracleHomeInventory::createInventoryObj() construction done
LsInventory::loadAndPrintInventory()
Retrieving inventory from Oracle Home...
OracleHomeInventory::load()
OracleHomeInventory::load() gets a Vector of all product entries
OracleHomeInventory::load() gets a Vector of all one-off entries
OracleHomeInventory::load() begins to process raw data from OUI to build up OPatch primitive classes
PatchObject(oracleHomePath,patchID)
PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/actions.xml
PatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/9352164/etc/config/inventory.xml
PatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/9352164/etc/config/deploy.xml
PatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/9352164/etc/config/sequence.xml
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/deploy.xml does not exist
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/deploy.xml unreadable
PatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/9352164/etc/config/sequence.xml does not exist or is not readable
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/sequence.xml unreadable
parserXMLFile : start
parserXMLFile : start
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/qsma.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/qsma.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/qsma.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/CDC.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jar
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::processJarActionPaths()
JarAction::processJarActionPaths(): return true for successful parsing Jar path
JarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jar
PatchObject(oracleHomePath,patchID)
PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/actions.xml
PatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/9654991/etc/config/inventory.xml
PatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/9654991/etc/config/deploy.xml
PatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/9654991/etc/config/sequence.xml
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/deploy.xml does not exist
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/deploy.xml unreadable
PatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/9654991/etc/config/sequence.xml does not exist or is not readable
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/sequence.xml unreadable
parserXMLFile : start
parserXMLFile : start
PatchObject(oracleHomePath,patchID)
PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/actions.xml
PatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/7527908/etc/config/inventory.xml
PatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/7527908/etc/config/deploy.xml
PatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/7527908/etc/config/sequence.xml
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/deploy.xml does not exist
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/deploy.xml unreadable
PatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/7527908/etc/config/sequence.xml does not exist or is not readable
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/sequence.xml unreadable
parserXMLFile : start
parserXMLFile : start
PatchObject(oracleHomePath,patchID)
PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/actions.xml
PatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/9696904/etc/config/inventory.xml
PatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/9696904/etc/config/deploy.xml
PatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/9696904/etc/config/sequence.xml
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/deploy.xml does not exist
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/deploy.xml unreadable
PatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/9696904/etc/config/sequence.xml does not exist or is not readable
PatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/sequence.xml unreadable
parserXMLFile : start
parserXMLFile : start
LsInventory::init()
LsInventorySession::process(): creates an output file /s01/db_1/cfgtoollogs/opatch/lsinv/lsinventory2011-05-06_23-38-48PM.txt
LsInventory::init() returns
Lsinventory Output file location : /s01/db_1/cfgtoollogs/opatch/lsinv/lsinventory2011-05-06_23-38-48PM.txt

--------------------------------------------------------------------------------
[Rules: should lock OH and Central Inv.= true, read from OUI= true, write to OUI= true, read from system= true, write to system= true, -all= false, -xml= false, -match= false, -patch= false, -detail= false, print patch = true, print all prods = false, print top-level prod = true, print detail = false, print by-bugs fixed = false ]
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 (4) :

OneOffEntry::getBugIDsFixed()
OneOffEntry::getBugIDsFixed() returns 3 bugs.
Patch  9696904      : applied on Fri May 06 22:26:37 CST 2011
Unique Patch ID:  12575150
   Created on 10 May 2010, 23:22:02 hrs PST8PDT
   Bugs fixed:
     7025450, 8575528, 6904068
   This patch overlays patches:
     9352164
   This patch needs patches:
     9352164
   as prerequisites

OneOffEntry::getBugIDsFixed()
OneOffEntry::getBugIDsFixed() returns 1 bugs.
Patch  7527908      : applied on Fri May 06 22:25:33 CST 2011
Unique Patch ID:  12546933
   Created on 30 Apr 2010, 12:48:09 hrs PST8PDT
   Bugs fixed:
     7527908
   This patch overlays patches:
     9352164
   This patch needs patches:
     9352164
   as prerequisites

OneOffEntry::getBugIDsFixed()
OneOffEntry::getBugIDsFixed() returns 10 bugs.
Patch  9654991      : applied on Fri May 06 21:33:38 CST 2011
Unique Patch ID:  12816418
   Created on 30 Jun 2010, 18:30:40 hrs PST8PDT
   Bugs fixed:
     9714832, 9713537, 9678695, 9655017, 9173248, 8309642, 9678697, 9678690
     9573054, 9654991
   This patch overlays patches:
     9352164
   This patch needs patches:
     9352164
   as prerequisites

OneOffEntry::getBugIDsFixed()
OneOffEntry::getBugIDsFixed() returns 414 bugs.
Patch  9352164      : applied on Fri May 06 21:29:20 CST 2011
Unique Patch ID:  12307477
   Created on 1 Apr 2010, 11:33:14 hrs PST8PDT
   Bugs fixed:
     9377578, 6418420, 7835247, 7207654, 7592346, 6724797, 7936993, 7331867
     9093300, 7535152, 7552067, 5879114, 8866013, 5457450, 8344348, 7272297
     7136866, 7196894, 6258480, 7013124, 6512622, 6355586, 7196532, 8568395
     8309587, 7557226, 5399699, 6509115, 8568397, 8568398, 7127618, 5701695
     6052226, 7424804, 6817593, 7553884, 6741425, 7513673, 6783812, 8437213
     6452766, 6469211, 7527650, 8309592, 8479537, 5991038, 5686407, 6945157
     7639602, 9119226, 6403091, 7589862, 7552082, 6711853, 8304589, 6052169
     8199266, 6327692, 5756769, 9352191, 7460818, 6268409, 8232056, 6687381
     6972843, 8230457, 6800507, 7027551, 6778714, 6200820, 6645719, 7393804
     6775231, 3934160, 6683178, 6650256, 5085288, 7528105, 7329252, 6378112
     6151380, 6844866, 4723109, 8544896, 5126719, 5890312, 5934363, 7036453
     7610362, 8426816, 8433026, 7270434, 7172531, 6451626, 8247855, 5497338
     6324944, 6874522, 7175513, 6960489, 7341598, 8576156, 6797677, 8342923
     5895190, 6756739, 7150470, 7593835, 7356443, 7044551, 8227106, 4695511
     7298688, 5747462, 8556340, 7197445, 5348308, 7937113, 8341623, 7569205
     8409848, 6053134, 6163771, 6851669, 6181488, 6375150, 6825866, 7210921
     7295780, 6345573, 7033630, 6954722, 6824129, 7523475, 7457766, 7309458
     8324577, 6840740, 6804746, 7375611, 8268054, 6981690, 6512811, 6988017
     7375613, 8344399, 7340448, 8362683, 7375617, 8251247, 5933656, 6005347
     9145204, 65×××0, 7238230, 6379441, 6452375, 6352003, 6833965, 7136489
     6610218, 7612639, 6392076, 7225204, 9119194, 5476236, 9442328, 7609057
     7609058, 6605106, 6374297, 6193945, 4693355, 8217795, 7039896, 7432514
     7330909, 6952701, 7190270, 8287155, 7587008, 7207932, 6802650, 7189447
     8481935, 4598439, 9442331, 6615740, 7155655, 6749617, 9442335, 7159505
     5868257, 5727166, 7173005, 6917874, 9442339, 7013768, 7691766, 7385253
     7291739, 7225720, 7257770, 7363767, 7244238, 6941717, 8267348, 7710551
     8354686, 7247217, 8328954, 7299153, 8909984, 6681695, 8702276, 9119284
     8217011, 7661251, 6265559, 6823287, 6991626, 6954829, 5259835, 6500033
     5923486, 7432601, 7022234, 8534387, 5147386, 7697802, 6653934, 7375644
     6490140, 7662491, 8331466, 5623467, 6070225, 6635214, 7396409, 6638558
     7038750, 6714608, 6838714, 6870937, 7219752, 7263842, 7278117, 6882739
     5404871, 8836667, 8373286, 7393292, 6678845, 6903051, 7936793, 6600051
     7155248, 4966512, 7155249, 7197637, 8836308, 8568402, 8568404, 8568405
     8431487, 5704108, 6343150, 7280764, 6923450, 7643632, 6145177, 8836671
     8310931, 6640411, 8347704, 8836675, 7155250, 7155251, 8836677, 7155252
     8836678, 7155253, 8292378, 7155254, 6219529, 7411865, 8227091, 8340379
     7276960, 6145687, 7659217, 5863926, 7022905, 6852598, 7123643, 6596564
     6413089, 6851438, 8836681, 8836683, 8836684, 8836686, 7579469, 7494333
     7315642, 8340383, 6786022, 8340387, 6926448, 7600026, 7462072, 6679303
     8815639, 7197583, 7172752, 7326645, 7008262, 9173244, 9173248, 7573151
     8490879, 7477934, 6725634, 6733655, 6799205, 6980597, 7499353, 6084232
     6014513, 7140204, 7254987, 8833280, 6647480, 6120004, 7693128, 6760697
     6051177, 8247215, 6858062, 7189645, 6844739, 6768251, 7196863, 5630796
     7378661, 7378735, 5970301, 6705822, 8290506, 6658484, 7599944, 9173253
     8309623, 7125408, 7257461, 6987790, 7568556, 6919819, 8886674, 5883691
     6955744, 7801939, 6074620, 7149004, 6857917, 8283650, 6445948, 5929055
     6110752, 7552042, 8210889, 8287504, 6506617, 7306915, 6271590, 5386204
     6976005, 8330783, 7606362, 5377242, 7043989, 8309632, 7575925, 6870047
     8309637, 5902053, 8309639, 7028176, 6827260, 7588384, 4726401, 6720712
     5910650, 6752765, 6971433, 6024730, 8315482, 6628122, 8239142, 9352164
     5695562, 4637902, 7345904, 8309642, 6994160, 8556586, 6404447, 8220734
     6919764, 7597354, 7523787, 6029179, 5231155, 6455659

probeAndPrintRACInfo()
Rac::getInstance()
 initializing racType
Rac::getClusterNodes()
 calling OiiOracleHomeInfo::getNodeList()
 OiiiOracleHomeInfo::getNodeList() returned 0 elements.
RAC::getClusterNodes() returned a list of 0 elements.
 User did not use -no_inventory, so why clusterNodes are empty?
 clusterNodes is null or empty, set racType to NO_RAC
Not a RAC system or shouldn't be treated like one
Rac::shouldPropagate()
Rac::getInstance()
 racType has been initialized, just return the cached object
[Rac: [RacType: typeDesc= NO_RAC, detail= Not a RAC system or shouldn't be treated like one ], should propagate file= false, local node="", remote nodes=", racTypeDetail="Not a RAC system or shouldn't be treated like one", racDiagMsg="
OPatch detected non-cluster Oracle Home from the inventory and will patch the local system only.
 ]
probeAndPrintRACInfo() done
--------------------------------------------------------------------------------
Locker::release()
OUISessionManager::unRegister()
Un-Registering the caller : OPatch
LsInventory::getInstance() returns
Cleaning up the directory : "/s01/db_1/.patch_storage/patch_unzip"...

OPatch succeeded.
记以录之!