Tuesday, November 03, 2009

OPatch: I'm struggling

I find it a bit hard to become friends with Oracle's Interim Patch Installer (OPatch). Back in 2005, I learned the hard way that OPatch itself contains bugs and needs to be patched every time you're going to use it to apply a patch! I've also gone through re-installation of Application Server Middle-Tier because a patch could not be rolled back without wiping out essensial files.

I'm sure that Oracle is trying to make it easier for us technicians to use OPatch, but so far I don't think they've been successful. Just look at this:

  • OPatch comes in four flavors: 10.1 (for Database 9.2.x/10.1.x and Application Server 10.1.x), 10.2 (for Database 10.2.x), 11.1 (for Database 11.1.x) and 11.2 (for Database 11.2). The current OPatch version for Application Server 10.1.x is actually 1.0.0.0.63 (why not 10.x?). According to Note 224346.1 ("Where Can I Find the Latest Version of Opatch?", updated August 2009), it should be 1.0.0.0.62. This means that you have to download OPatch through patch 6880880 to determine which version is the current one.
  • Since you cannot read the exact version number from the name of the downloaded file (e.g. p6880880_101000_WINNT.zip), you have to unzip it and look in the readme file to determine if the OPatch version installed in your Oracle Home is up to date.
  • To determine the OPatch version in your Oracle Home, you have to set the ORACLE_HOME environment variable and then go to ORACLE_HOME/Opatch folder before you run the "opatch version" command.
  • If you install OPatch by unzipping it in your Oracle Home, you have to unset the read-only flag for all the unzipped files to avoid problems.
  • The size of the downloaded OPatch file jumped from 313 KB in version 1.0.0.0.58 to 22 MB in version 1.0.0.0.59! The increase was caused by the inclusion of Oracle Configuration Manager, another module that I'm struggeling to become friends with.
  • Running one of the newer OPatch versions on Windows will install a service (e.g. Oracleora101202mtConfigurationManager) with Startup Type set to Automatic. This is a bit annoying if you have taken control of the services and created scripts to start the various Oracle processes. Subsequent runs of OPatch will force the Startup Type back to Automatic, which is even more annoying.

Maybe the patches could contain information about minimum OPatch version? Would it be possible to have one OPatch version which was intelligent enough to find out what kind of Oracle Home it was installed in? Wouldn't it be great if OPatch could just take care of itself?

More information on OPatch

No comments:

Followers