Kevin Kempf's Blog

June 29, 2010

Discoverer 11g Installation on 11i

Filed under: 11i, Discoverer — kkempf @ 3:33 pm

Another Upgrade for the sake of Upgrading

Looking at my list of things to do, I recalled that Discoverer 10g ( was on the bubble for upgrade to Discoverer 11g.  If you read here regularly, you’ll recall  that originally, Oracle planned to kill support for in December of 2010, but something changed and they gave AS 10.1.2.x a 1 year reprieve (page 8).  I have no particular inclination to perform this upgrade, except that it’s just another “thing” to do sooner or later, and I had the time to play with it, in earnest, this week.

Product Certification

Like other Fusion entities (EM 11g and possibly R12, sooner than you’d think), Discoverer 11g ditched Oracle application server and moved to Weblogic Server.  Discoverer 11g comes in 3 flavors at the moment:, and  Per Oracle support, the certified version combinations are:

  • Oracle Fusion Middleware is certified with WebLogic Server 10.3.1
  • Oracle Fusion Middleware is certified with WebLogic Server 10.3.2
  • Oracle Fusion Middleware is certified with WebLogic Server 10.3.3

When you add E-Business Suite 11i (or R12), you’re immediately stuck at (as of this moment).  Late breaking news, is now certified

Installation Overview

One of my major gripes with (con)Fusion 11g, is that the installs are so convoluted and peculiar.  In the case of Discoverer 11g, you first have to install Weblogic (10.3.2).  This actually went off without a hitch, and simply provides the framework from within which Discoverer can run.

Next you have to run the Repository Creation Utility (rcu) against your E-Business suite RDBMS.  This is like a mini-install, which effectively just forms a database connection and creates some new tablespaces and upgrades your repository to make it “11g ready”.  What, exactly, it upgrades, is a mystery to me.  Finally, you have to install Discoverer, but the installer includes everything but the kitchen sink.  I kid you not, here’s what’s in the download:

  • HTTP Server
  • WebCache
  • Portal
  • Forms Services
  • Forms Builder
  • Reports Services
  • Report Builder/Compiler
  • Discoverer Administrator
  • Discoverer Plus
  • Discoverer Viewer
  • Discoverer Services
  • Discoverer Desktop
  • Enterprise Manager Fusion Middleware Control

After running the Discoverer install, I’m required to apply patch 9387227 for 11i interoperability.  Of course, this won’t  work until I’ve applied patch 6880880 – you got it, the latest OPatch to the Oracle Home.  You can find Discoverer, the Repository Creation Utility and Weblogic here.   Interestingly, the RCU and  Weblogic are at the end under “Required Additional Software”.   To get 9387227 or 6880880 you can just search from Metalink.

So in the end, to install Discoverer, it’s Weblogic Server 10.3.2 (1 CD),  RCU (1 CD), Discoverer (4 CDs), and 2 one-off patches.  I wish this was bundled in some understandable way, but Fusion appears to be a patchwork of installs in competition with the labyrinth of Minos for clarity.

Weblogic 10.3.2 Installation

Nothing difficult here.  Just choose your paths and follow the bouncing ball, so to speak.  Just remember not to check the Quick Launch at the end.  The screen shots below depict 10.3.3; this is because I forgot to take screen shots during the 10.3.2 install.  They’re virtually identical from a GUI standpoint, I almost don’t even need to include any of them.

Launching the Weblogic Installer from the command line

Welcome Screen

Tell the installer where the Middleware home will reside

Don't call me; I'll call you

Just choose "Typical"

Give it a path. Coherence is new.

Here's the gigabyte of "stuff" I'm going to install

Happily working at installing

Repository Creation Utility

Just figuring out how to launch this thing was annoying.  When unzipped, it creates a folder called rcuHome, which has about 25 directories in it.  From the bin directory, run rcu.  The options and required information is pretty self explanatory until you get to step 3 called “Select Components”.  Under Portal and BI, you select Discoverer (only) and proceed.  Shortly after this time it connects to your ERP database, creates a few tablespaces owned by a schema owner you designated, and ultimately unceremoniously dumps you back to the command prompt.

Launching the Repository Creation Utility

Welcome Screen

Create (as opposed to drop) the components

Provide database connectivity information

Warnings, verifications, etc

You only need to select Discoverer

New Schema Passwords

New Tablespaces will be created

Final look before it runs


First of all, could the versioning be more confusing?  While someone at Oracle may think is a great name for a version, I personally do not.  How about Discoverer 11gR1.2?  Or, perish the thought, just Discoverer 11gR2?  Are there really going to be that many versions of this thing?  Alright, once again, this install was largely “follow the bouncing ball”.   I purposely chose the defaults, and in the process created an near indiscernible mess on the operating system between ORACLE HOME being called as_1 and the ORACLE_INSTANCE being called asinst_1.  I’d urge you to try using something more meaningful.  I did make the weblogic domain name Discoverer, as I suppose, in theory, it could host multiple applications.  Under components, once again I chose to deselect everything I could (including Enterprise Manager for Fusion) and choose only Oracle Discoverer and the Oracle Web Cache.   I used auto port configuration and unchecked the “Use Application Level Identity Store” and we don’t use OID for authentication.  After running at the end, it said it was done successfully.

Launching the Discoverer Installer

Choose Install & Configure

System Prerequisite Checks

Provide the weblogic domain information you wish

Sign up for Oracle spam

Provide details on the installation location(s) and names

Choose Discoverer and web cache, uncheck clustered if applicable. Enterprise Manager at your discretion

Choose Discoverer and web cache, uncheck clustered as applicable. Enterprise Manager at your discretion.

Let Oracle figure out the ports..

Create a connect string: or the like

OID integration, which I don't have to worry about

Installation Summary

Installation in Progress

It's not an install without

Post install configurations

Successful install

Helpful summary of locations and ports

More of helpful summary with URLs

OPatch & Interop Bug

These installed without incident, though the hardest part was figuring out how to set environmental variables for the new Discoverer 11g environment.  For what it’s worth,

the MIDDLEWARE_HOME is the base Middleware directory
the ORACLE_HOME is a subdirectory Middleware/as_1
the ORACLE_INSTANCE is subdirectory Middleware/asinst_1

Webcache Bug

I always hit a problem with the webcache.  The weblogic server was happily up and running, but when I went to the URL for discoverer, I got nothing.  There was some vague message to the effect of:

Failed to assign port 8090: Address family not supported by protocol

After a surprisingly responsive and competent analyst helped me for the better part of the day, I realized I was hitting a bug spelled out in ID 1113163 (which was supposedly only relevant to Suse Linux).  Effectively, there was a problem out of the box with IPv6 (which I didn’t have enabled on the host).  After adding <IPV6 ENABLED=”NO”/> tag below the </MULTIPORT> tag in the webcache.xml file, all was good and I was finally able to log in.

TNS conFusion

Since I started working with Oracle, the tnsnames. ora file has gone in $ORACLE_HOME/network/admin.  So Discoverer requires it in the instance home:  Middleware/asinst_1/config.  Makes sense to me.  Until you put in a valid entry for your ERP database, you cannot connect.  I put the file under the Middleware/as_1/network/admin (aka ORACLE HOME) and made a symbolic link to it in the Middleware/asinst_1/config directory.

Default URLs

Discoverer Plus: http://hostname:8090/discoverer/plus

Discoverer Viewer: http://hostname:8090/discoverer/viewer

Weblogic Server Administration: http://hostname:7001/console

Weblogic Marketing Propoganda: http://hostname:7001

Initial Impressions

Aside from the capacity to remember some of the login information and save it so I don’t have to type everything about my connection every time I go there, there appears to be no fundamental difference between Discoverer 10g and Discoverer 11g.  This truly was an upgrade merely for the sake of upgrading, my favorite kind. </sarcasm>


Creating connections is an improvement over 10g

Saved Session


Profile options

I should note, there’s a bunch of profile option values and autoconfig context file values which you may wish to change.  Realistically, I’m not sure how much they affect, but you should follow note 1073963.

June 21, 2010

Patch 6856379 & PLS-00801

Filed under: 11g, 11i — kkempf @ 2:57 pm  Not quite

Oracle announced a new baseline beyond required for extended support (although they refuse to call it, it’s about as ambitious in scope/size of patching).  I’ve spent my last 3 maintenance windows applying patches relevant to my environment to conform to this requirement, for a rough total of about 12 hours of adpatching.  The last phase involved applying an update to Order Managment (Dec 2008 Cumulative Patch 6856379).

OE Objects Invalid

After applying this patch, along with ATG_PFH_RUP7 (6241631), a handful of objects in the OE (order management) schema would not compile through any means. After reviewing document 785179.1, I attempted adadmin, changing the order of compiles, even command line compiles, but continued to see:

PLS-00801 Internal Error (1401)

Eventually, I found my way to bug 8209917, which said, in essence, that some customers report that after applying patch 6856379, certain OE objects would become invalid, unable to recompile, and cause a PLS-00801 error.  Bugger.

The Fix

This is really where it fell apart for me.  The only known fix was to run utlirp.sql (invalidate all objects) followed by utlrp (recompile all invalids).  Hugely, massively disruptive process there, especially for a 24/7 production system.   By definition, utlirp has to be performed with the database in upgrade mode (startup upgrade) which means it might as well be down as far as users are concerned.  We decided to undertake this process during a slow business time (lunch!) and the process took over an hour (23 mins to invalidate, 49 minutes to recompile about 97,400 invalid objects in parallel 12 (job_queue_processes=12)).

In the end, it did work.  We undertook the emergency maintenance because the loss of service was so impactful; shipping couldn’t get items out the door, and sales had trouble with certain order entry screens.  They were really verbose errors, all to the extent of “OE_DEFAULT_LINE has errors”  or the like.


Last November, when the “rate this patch” feature became available, I laughed at it and said “why would I ever do that?”.  Now I know.  Maybe I’ll go rate that patch as 0 stars.  Or maybe I won’t, and let Oracle do their own work while I try to do mine?

June 15, 2010

Deploying Agents via EM Grid Control 11g

Filed under: 11g, Enterprise Manager — kkempf @ 10:06 am

Typical caliber of Oracle agents

EM as I see it (for what it’s worth)

After upgrading to EM Grid Control 11g, I faced the daunting (read: boring) task of updating agents on about 12 hosts from 10.2.0.x to  This action is not required, mind you, but never a bad idea to keep the agents up to date.

I’d been hearing conference after conference about how people were managing their enterprises with EM and how it had become a vital cog in their day to day activity.  I find EM useful, even important, but not vital.  Life would go on if the grid control server blew up, it would just be harder.

There are so many buttons, hyperlinks and tabs I chuckle at in EM.  Meaning the ones I would never hit.  Innocuous looking buttons and tabs that allegedly perform some of the most complicated tasks in Oracle.  Does anyone actually press these things, and use EM to perform the task?  If so I’d love to hear about it.  Things like:

  • Convert to Cluster Database
  • Perform Recovery
  • Clone Database
  • Failover to standby database
  • Migrate to ASM

Regardless, the point is that I decided to give Grid Control 11g the acid test: can it actually upgrade my agents remotely?  More to the point: can I do it without reading the documentation, applying 4 interim patches, and opening SR’s?

Staging Agent Installs

About the only preparation I had to make was to stage the agent installs on the EM server.  This is really easy; simply navigate to $OMS_HOME/sysman/agent_download (/u01/oem/Middleware/oms11g/sysman/agent_download in my case) and make directories to land the agents in as necessary.  You can download the agents here.

For example, under $OMS_HOME/sysman/agent_download, I created two directories: and for the two possible agent version I may deploy (linux and Windows, respectively).  Under I had 2 subdirectories: linux and linux_x64; under I had 1 subdirectory: win32.


Head to the Deployments tab in EM, it will look like this:

Deployment Tab

Choose an action

In this example, I’m doing an Upgrade.  I’ve also tested Fresh Install.  I can’t speak to the other options (Clone, Shared Agent), quite frankly they look unappealing to me.

Fresh or Upgrade?

Fill in the blanks

Of course, you need to select the right version and platform from the drop down box.  What’s available in the drop down box is dependent upon what you staged in the $OMS_HOME in the first step.

One of my favorite screens

Seriously, Oracle, enough!  Stop asking me for my email address!  If you don’t know who I am and what products I have installed by now… too bad.

I always feel like somebody's watching me

Really, I’m sure

Why don't you leave me alone?

Install in progress

This screen starts with some validations against things like attempting the ssh connection username/password, checking inventory permissions, directory structures, etc.  If there’s anything amiss, it will tell you so.

If  you watch this portion from the OS (Linux) you will see that the old agent doesn’t shut down until late in the process; it’s virtually a seamless gap between the time the old agent is down and the new one is up.


Installation Complete


In short: it worked!  Oracle, you don’t do it often, but in this case, I’ll give credit where credit is due and say that you’ve made my life easier this time.  It not only worked, it did it faster, better and easier than I would have been able to do it manually, and that’s all I can ask.  I highly recommend trying this method out for yourself.

It is worth mentioning, that I had a Windows which was on which I decided to upgrade, out of curiosity, and it worked in the same way as Linux, successfully.

June 2, 2010

Oracle E-Business Suite 11i on Chrome in Ubuntu 10.04 (Lucid Lynx) and Windows 7

Filed under: 11i, Oracle — kkempf @ 8:18 am


I’m certain this isn’t supported by Oracle at this point (but it should be!).  I should also note that I’ve still never successfully looked up a certification on the new My Oracle Support.


Internet Explorer 8 has to be the slowest, clumsiest version of their browser yet.  I couldn’t stand it.  It was as if they had a competition at Microsoft to if they could increase the memory footprint while slowing the program launch time.  As noted earlier I relegated Windows 7 to a virtual machine as Ubuntu more closely matches the way I work.

I love Chrome. It’s free, fast, lightweight and has more screen real estate than any browser I’ve tried.  I like the homepage, where the 8 most popular website destinations of yours are available to click on and go to.  It’s a great browsing experience.

As soon as I install Ubuntu, I’m officially unsupported for 11i, but I’ve been running 11i for years under Linux without incident.  Realistically, in 8 years as an 11i DBA I can’t remember ever needing support for a desktop issue.  This isn’t to say there weren’t bugs with the desktop client, but they were cleared either by upgrading the 8.0.6 server or using a newer jinitiator/java version. Now that Oracle has given jinitator the boot, I feel there’s even less reason for concern.


My understanding is that Chrome for Linux (Windows as well?) inherits its plugins (flash, java at least) from the operating system.  Therefore, my setup was pretty minimal as I already had JRE installed.  Install the JRE client (it must be the same version as the one your application server expects to find or apply patch 7567782 so that it works on the “equal or greater”  principal of Java versioning)  via Ubuntu software center (it’s called Sun Java 6.0 Plugin) and it just “works”.  Despite the potential for known issues with Java 6 update 20 (Steven Chan has warned about this many times) I have used it without incident in the (admittedly limited) forms I got into in 11i.  Incidentally, does anyone find it ironic that ever since Oracle bought Sun, none of the new Java versions have worked right with 11i?  When I type about:plugins in the URL bar, here’s what I get:


I’d say my launch time from choosing a menu item to a usable java forms session is about 5 seconds.

The proof

Officially, I don't exist

Windows 11i & Chrome

Just as a test, I tried to launch 11i via Chrome on my Windows 7 virtual box; it gives a scary error and fails to work.  This appears to be a conscious decision on the part of Google; glad they didn’t have such lame reservations on Linux!  Oops.  This error pops because Chrome doesn’t want you to dynamically install Java (or Jinitiator, I presume).  After I manually installed Java on Windows 7, Chrome works fine with Windows 7.

Error before JRE is installed on the OS

11i using Chrome on Windows

Up on my soapbox

I don’t understand why Oracle doesn’t support 11i  or R12 on a Linux desktop.  It’s clearly functional, fast, and overdue.  Sure, there’s a zillion flavors of Linux out there and they’d all be impossible to support.  But Oracle has their own version of Linux, why not start there?  That would mean Oracle Unbreakable Linux, RedHat Linux and CentOS could all be covered under the same certification (unless Oracle wanted to claim their knock-off OS is somehow superior to RedHat).  Ubuntu seems like a rather logical choice, as it has the highest desktop adoption rate of any flavor of Linux I know.  I won’t be naive and pretend that just because I’ve proven 11i to work fine on 2 flavors of Linux means all Oracle has to do is stamp a cert.  I realize there’s much more to supporting an OS than whether it works, but at some point Oracle needs to blaze a trail on this issue and just commit to doing it.

A Word of Caution

I’m sure open JDK is a fine product, with good intentions.  However, merely by being installed on my machine, it caused 11i professional forms not to launch right.  My suggestion is to proof this concept with Sun JDK, and don’t install Open JDK (or figure out how to get it off of the default JDK if you do)

June 1, 2010

Sorry for the inconvenience

Filed under: Oracle, Support — kkempf @ 1:06 pm

Why we hate support

The file l21683748.req was a concurrent request output file.  How it failed their virus scan is beyond me.  Names have been changed to protect the… innocent, let’s go with that:

Hi Kevin,

I apologize for the delay. The virus scan failed for file l21683748.req. Please upload this file again, sorry for the inconvenience.


My update

Hi Scott,

The file l21683748.req no longer exists as it took you 3 weeks to tell me this. Sorry for the inconvenience.


I think I could save my company a small fortune in support and just use the old Eliza program to solve my Oracle issues.

Blog at