Kevin Kempf's Blog

March 26, 2010

More Logical Database Corruption

Filed under: 11g, Oracle — kkempf @ 10:59 am

Days which begin at 1am with a phone call sometimes end well

When the SAN corrupts every host residing on it, it has the makings for an unpleasant day.  Luckily in my case, this didn’t affect my 11i database as it was happily living on another array.  It did affect the 11i application server and many, many ancillary application servers and databases.   A hard crash is never good, and losing archivelogs makes it worse.

Identifying the corruption

While bringing up these smaller databases, I ran logical validation via RMAN as a precaution, and much to my chagrin, I ran into my old friend again, in the system tablespace:

RMAN> run {
allocate channel d1 type disk;
backup validate check logical database;
release channel d1;
2> 3> 4> 5>
allocated channel: d1
channel d1: SID=28 device type=DISK

Starting backup at 25-MAR-10
channel d1: starting full datafile backup set
channel d1: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/labworks/labworksdata/data/labworks01.dbf
input datafile file number=00001 name=/u01/labworks/labworksdata/system/system01.dbf
input datafile file number=00003 name=/u01/labworks/labworksdata/system/sysaux01.dbf
input datafile file number=00006 name=/u01/labworks/labworksdata/data/labworks_indx01.dbf
input datafile file number=00002 name=/u01/labworks/labworksdata/system/undotbs01.dbf
input datafile file number=00004 name=/u01/labworks/labworksdata/data/users01.dbf
channel d1: backup set complete, elapsed time: 00:04:17
List of Datafiles
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
---- ------ -------------- ------------ --------------- ----------
1    FAILED 0              54288        131075          5975563226245
File Name: /u01/labworks/labworksdata/system/system01.dbf
Block Type Blocks Failing Blocks Processed
---------- -------------- ----------------
Data       0              58249
Index      0              14807
Other      598            3728

File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
---- ------ -------------- ------------ --------------- ----------
2    OK     0              0            52608           5975563226259
File Name: /u01/labworks/labworksdata/system/undotbs01.dbf
Block Type Blocks Failing Blocks Processed
---------- -------------- ----------------
Data       0              0
Index      0              0
Other      0              52608

File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
---- ------ -------------- ------------ --------------- ----------
3    OK     0              64790        131093          5975563226243
File Name: /u01/labworks/labworksdata/system/sysaux01.dbf
Block Type Blocks Failing Blocks Processed
---------- -------------- ----------------
Data       0              21298
Index      0              18315
Other      0              26669

File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
---- ------ -------------- ------------ --------------- ----------
4    OK     0              3486         4097            475461
File Name: /u01/labworks/labworksdata/data/users01.dbf
Block Type Blocks Failing Blocks Processed
---------- -------------- ----------------
Data       0              15
Index      0              2
Other      0              593

File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
---- ------ -------------- ------------ --------------- ----------
5    OK     0              55802        393216          5975563226259
File Name: /u01/labworks/labworksdata/data/labworks01.dbf
Block Type Blocks Failing Blocks Processed
---------- -------------- ----------------
Data       0              335501
Index      0              0
Other      0              1913

File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
---- ------ -------------- ------------ --------------- ----------
6    OK     0              49670        65536           5975563225369
File Name: /u01/labworks/labworksdata/data/labworks_indx01.dbf
Block Type Blocks Failing Blocks Processed
---------- -------------- ----------------
Data       0              0
Index      0              13816
Other      0              2050

validate found one or more corrupt blocks
See trace file /u01/labworks/labworksdb/11.2.0/diag/rdbms/labworks/LABWORKS/trace/LABWORKS_ora_32399.trc for details
channel d1: starting full datafile backup set
channel d1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel d1: backup set complete, elapsed time: 00:00:01
List of Control File and SPFILE
File Type    Status Blocks Failing Blocks Examined
------------ ------ -------------- ---------------
SPFILE       OK     0              2
Control File OK     0              626
Finished backup at 25-MAR-10
released channel: d1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03008: error while performing automatic resync of recovery catalog
RMAN-20033: control file SEQUENCE# too low

RMAN> exit

Confirming the corruption from the database (fractured, all zero & corrupt!)

I knew I’d need to know what the database v$database_block_corruption view thought was up:

sqlplus / as sysdba

SQL*Plus: Release Production on Thu Mar 25 14:16:25 2010

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Release - 64bit Production

SQL> select * from v$database_block_corruption;

---------- ---------- ---------- ------------------ ---------
1     113181         64                  0 FRACTURED
1      98825        509                  0 ALL ZERO
1      98824          1                  0 CORRUPT
1      98823          1                  0 ALL ZERO
1      98800         23                  0 CORRUPT

Determining affected objects

Time to see what segments were affected.  This is scary stuff, being in the system tablespace, I was already feeling like this wasn’t going to end well, but when I queried the blocks (or a good sampling of them, you can see from the report above basically blocks 113181-113245 and 98800 – 99324 were affected

SQL> select tablespace_name, segment_type, owner, segment_name
from dba_extents  where file_id=1 and 113181 between block_id and block_id + blocks -1;

no rows selected

Lather, rinse, repeat.  Many times.  I didn’t do every block, but since they were contiguous, I took a reasonable sample before forming the idea that none of these blocks happened to be tied to a segment.

Resolution Options

In Metalink/MOS Doc ID 28814.1 (Handling Block Corruptions in Oracle 7 / 8 / 8i / 9i / 10g / 11g) it states: “An error on an UNUSED Oracle block can be ignored as Oracle will create a new block image should the block need to be used so any existing problem on the block will never get read”.  Sounds great, Oracle confirms my suspicion that this is not serious.  However, I don’t really want to see corrupted every time I look at this database, nor do I want my weekly job to fail for this database every week for something which isn’t really an issue.  Surely, Oracle must have some package or procedure with which you can “reset” unused, logically corrupt blocks so they don’t stay out there as corrupt?  Nothing I could readily find.

Fill it up, Drop it

I decided to go the simpler route (again): create a massive table in the affected tablespace, which would at some point (hopefully) fill those blocks, then drop the table.

SQL> create table logical_corruption tablespace system as select * from sys.access$;

Table created.

SQL> insert into logical_corruption select * from sys.access$;

94990 rows created.
SQL> /

Repeat, until the tablespace has something like 20MB free.

rman target / nocatalog

Recovery Manager: Release – Production on Thu Mar 25 14:29:50 2010

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database: LABWORKS (DBID=3344015257)
using target database control file instead of recovery catalog

RMAN> backup validate check logical datafile 1;

Starting backup at 25-MAR-10
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=25 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/labworks/labworksdata/system/system01.dbf
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:26
List of Datafiles
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
---- ------ -------------- ------------ --------------- ----------
1    OK     0              19905        131075          5975564162526
File Name: /u01/labworks/labworksdata/system/system01.dbf
Block Type Blocks Failing Blocks Processed
---------- -------------- ----------------
Data       0              93229
Index      0              14807
Other      0              3131

channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
List of Control File and SPFILE
File Type    Status Blocks Failing Blocks Examined
------------ ------ -------------- ---------------
SPFILE       OK     0              2
Control File OK     0              626
Finished backup at 25-MAR-10

RMAN> exit

Recovery Manager complete.

Finally, check with the data dictionary:

sqlplus / as sysdba

SQL*Plus: Release Production on Thu Mar 25 14:30:45 2010

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Release - 64bit Production

SQL> drop table logical_corruption;

Table dropped.

SQL> select * from v$database_block_corruption;

no rows selected

Parting Shots

I was exceptionally lucky (again) in that the affected segments (or lack of them in this case) of my logical corruption were unimportant or unallocated.  Clearly, this could have been anywhere in my database.  If it had been elsewhere, I’d be using RMAN to perform a block level recovery, and the end result might have been an incomplete database recovery.  If, however, you find yourself in the same situation as me, you can at least rid yourself of annoying OEM and RMAN status’ of logical corruption, using a similar method.

March 22, 2010

Firefox 3.6 with Oracle 11i and a Linux client

Filed under: 11i, Linux — kkempf @ 10:46 am

I suppose I should first issue a disclaimer:

The following configuration is not certified by Oracle*

* To my knowledge.  It could be certified by Oracle, but with My Oracle Supports new Certify interface, there’s really no way to tell.  I’d check Steven Chan’s Site if you really need to see what’s certified these days.

OK, now that we’re beyond that.  Firefox 3.5 kept telling me there was a new version available for download on my CentOS (RedHat) Linux client PC (which is my work workstation).  I finally had some time today to pull the latest kernel for Linux, and figured as long as I was going to have “admin time” I’d pull Firefox 3.6 as well.

Of course, after doing so (and closing all Firefox sessions and restarting) 11i won’t launch, it’s still got the cryptic, useless message about a plugin needed for Netscape:

In order to access this application, you must install the J2SE Plugin version 1.6.0_12 on your client and NPX_PLUGIN_PATH environment variable is set before starting Netscape. To install this plugin, click here to download the oaj2se.exe executable. Once the download is complete, double-click the oaj2se.exe file to install the plugin. You will be prompted to restart your browser when the installation is complete.

Well, this used to mean that my soft link in /home/kkempf/.mozilla/plugins was wrong.  Except it was unchanged:

[kkempf@localhost plugins]$ pwd
[kkempf@localhost plugins]$ ls -ltr
total 8
-rw-r--r-- 1 kkempf kkempf 856 Dec 15  2006 flashplayer.xpt
lrwxrwxrwx 1 kkempf kkempf  42 Jun 10  2008 -> /usr/lib/mozilla/plugins/
lrwxrwxrwx 1 kkempf kkempf  58 Aug 24  2009 -> /usr/java/jre1.6.0_12/plugin/i386/ns7/
[kkempf@localhost plugins]$

As I’m fond of saying at work “This is why Linux will never be on every desktop!”  I found the answer after Googling for a few minutes.  Under Firefox 3.6, the plugin has changed.  Why?  No clue.  Don’t care really.   All I can say is for whatever reason, the old plugin ( has been replaced by the new plugin (  You’ll need to know where your java version is installed (and what the correct 11i version is).  In my case, it lives in /usr/java/jre1.6.0_12

[kkempf@localhost plugins]$ pwd
[kkempf@localhost plugins]$ ln -s /usr/java/jre1.6.0_12/lib/i386/

That’s it.  Shut down all Firefox sessions, restart, and 11i runs without complaint.

March 19, 2010

A Seagate Brick

Filed under: Hardware — kkempf @ 1:44 pm

We definitely don't stand behind this product!

A little break from the norm…

Working in IT, it’s not uncommon to have requests from friends and relatives to take a look at PC problems, install RAM, upgrade an operating system and the like.  It goes with the territory.   A friend of my wife’s recently dropped off her Gateway LX-6200 because it would no longer boot.  She wanted to recover her (not yet backed up) digital photographs.  Nothing unusual there.  I booted the system, it behaved oddly, in that it didn’t even seem to acknowledge a hard drive.  Not to be deterred, I removed the Seagate 7200.11 750gb hard drive and tried to access the data through 2 different “over the counter” USB hard drive interfaces.   Neither could see the drive.

Knowing when I was beyond my capabilities, I brought it in to work to have it looked at by someone who has done far more hard drive recover than I.  He quickly reached the same conclusion, but someone recalled a Seagate issue from about a year ago where the drive would “brick” from a firmware update from Seagate.  Sure enough, upon subsequent research, we were convinced this was the issue.


So I started by calling Seagate for support.  On their website, they openly acknowledge the problem, and at some point even offered a free fix and free data recovery as a result of the issue.  Except when I called them, they quickly said it was not their issue, as the drive was OEM‘d to Gateway.  Nice accountability there.  They literally would not budge, it was not their problem.  Despite the fact that they manufactured the defective drive, issued the defective firmware, and didn’t deny the problem, since it was OEM’d, they wouldn’t touch it.  The drive isn’t labeled “Gateway”.  It’s labeled “Seagate” with a model and serial number.  I guess they’re proud of their drives, until they have a defect.  In contrast, when I owned a Ford Ranger about 10 years ago, and the Wilderness AT tire issue broke out, I didn’t take it my truck to Ford for recall replacements, I took it to Firestone.  Those must have been a different kind of OEM.


I moved on to Gateway support, not having any idea how old the PC was.  It turns out, it’s over a year old.  So Gateway says “It’s out of warranty, nothing I can do”.  End of discussion.  Here’s my exchange with support (I use “I” and “My” rather liberally, it’s not my PC, but they don’t know that):


Customer (Kevin Kempf) – 03/10/2010 07:56 AM

I have a PC with a bricked 7200.11 750gb hard drive.  When I contact seagate they confirm it’s on their list but can’t do anything because it’s an OEM drive.  I can’t boot my PC anymore the hard drive isn’t recognized.

The issue is publicly known, if I’d bought it directly from seagate they would perform free data recovery.  What do I do to get this remedied?


Dear Kevin Kempf,

Thank you for contacting Gateway. I’ll be happy to assist you.I understand that, you’re facing the issue with hard drive.

As per our records your computer is out of warranty.

Please note that, you may check the hard drive status in BIOS.For entering in to BIOS Tap F2/DEL key while restarting.

If hard drive not detecting in BIOS, you may need to purchase the new hard drive.


You understand this is an acknowledged manufacturing defect on the part of Seagate, and if I had purchased this drive independently of Gateway, I’d be getting a repair or data recovery for free?  So, in effect, Gateway made my warranty artificially worse?  If I had bought a Dell, by the way, I could send it in immediately for free repair.  Not adding up to much of a case for the merits of your company here.


Thank you for contacting Gateway. I apologize for the inconvenience that you have experienced.

Let me confirm the issue regarding hard drive. As per our records your system is out of warranty.

In order to resolve this issue, we will take your system in to depot repair. For that you need to pay $199 and one way shipping charge.

If you are ready to send the system to our depot for repair, we would be happy to assist you in resolving any issues to get your system up and running.

Bad Customer Support is the Norm today

If you google “seagate 7200.11 brick” you will have many hits citing the problem, and even some pretty detailed “hacks” to fix it for about $20 in cables.  I would have been tempted to do this, except this isn’t my drive, and it’s not backed up.  There’s even a youtube video which shows (in excruciating detail) how to fix this yourself.   If I were Seagate, I’d be so embarrassed having produced such an awful product, I’d do everything I could think of (like Toyota?) to bend over backwards and fix this issue for any affected drive, regardless of OEM or not.  It turns out if the OEM drive had been thrown away after buying the PC, replaced by a drive purchased from, it would have been covered.

The Fix

Nobody was going to own up to owning the problem. I believe if it went to any random local PC repair shop (or Best Buy), they will botch the fix and the data will be lost.  I found a few services on Ebay which promise to fix the drive (search on “unbrick seagate”).   If any of them have even done one successful unbrick, they’re more experienced than I.  So in the end, I recommended that the owner send it to one of these services.  If the link there is expired, just go to and type seagate unbrick. I’m happy to say that our analysis was correct, the drive was successfully de-bricked, and returned to her in working order.

The Blame Game

In the end, I place the blame 90% on Seagate’s shoulders.  They built it, they broke it, they ought to fix it.  Whether I bought it from Amazon or Gateway shouldn’t make any difference because they’re the ones who gaffed it.  If they had a PR brain, they might have been more amicable to fixing these drives, no matter where they came from, in order to preserve their good name.  If a service on Ebay can do it for $75, I imagine that Seagate could do it for far less, en masse.

Why do (most) people simply buy a PC over the counter (or internet) these days, as opposed to the “good old days” when you’d buy a kit and custom tailor every component?  I argue the answer to that is

a) People don’t care about the components per se.  They certainly don’t have the expertise to install and configure them. (Apple is a great example of this argument)

b) Components are mostly commoditized these days, so the difference between a Dell, Gateway, Lenovo and HP with the same hard drive, memory, graphics card and CPU is rather insignificant.

c) They want a single place to call where the person on the other end of the phone is liable for their problem.  This OEM attitude turns that model on it’s head.

I guess what I’m trying to summarize here, is that the hardware manufacturers can’t have it both ways.  They either need to own up to their failures and back the product, or really rebrand them before they go into a Gateway so the hard drive says “GATEWAY” on it.  This way, I’ll know who to hold responsible.

March 15, 2010

What is an ORA-48175??

Filed under: 11g, Oracle — kkempf @ 12:18 pm

Nothing ever goes as planned

During my monthly maintenance window yesterday, I hit a very odd and cryptic error:

$ sqlplus / as sysdba
SQL*Plus: Release - Production on Sun Mar 14 10:40:19 2010
Copyright (c) 1982, 2008, Oracle.  All rights reserved.
Connected to an idle instance.
SQL> startup
ORA-48175: the path name must not contain the string '..'.

Note this happened immediately; before it even tried to allocate memory.  No problem, I’m thinking, an ORA error should be well documented and have a solution on Metalink:

Uh oh.  Now what?  Well, googling the error didn’t get me anything.  I scoured the init file, looking for some “..” path reference (also known as relative path).  This didn’t turn anything up, and a co-worker found something of interest in the database software owners environment:

$ set|grep ORACLE_BASE

Why would you ever do this?

In this case, it appears that I had to put ORACLE_BASE in my environment for OPatch and used a relative path after I'd set it
on the command line.  In the environment file, I (lazily) entered it as follows:


The cure

(show me show me show me how you do that trick... oh never mind)

To fix it, I made it an absolute path (ORACLE_BASE=/u01/appprod/oracle/proddb/11.1.0/) and everything was fine.

If you ever see something like this, I'd recommend checking your environment for whatever the offending string may be:

$ set|grep ‘\.\.’

March 8, 2010

Advanced Compression with 11i, follow up impressions

Filed under: 11g, 11i, advanced compression — kkempf @ 9:31 am

We’ve been running Advanced Compression  for three week now without incident, and I have to say, things look impressive.

  • IO is way down (most of the relevant objects residing in the buffer cache)
  • CPU is up slightly (compress/uncompress overhead, we presume)
  • Performance is as good as or better than I can ever recall within the professional forms

As of today, I have only a handful of tables compressed:

SQL> select count(*) from all_tables where compression = 'ENABLED';


Yet this is the most telling indicator I can show you, with only these 55 objects compressed:

March 7, 2010

The life cycle of a bad SR

Filed under: Oracle, Support — kkempf @ 9:58 pm


As a paying Oracle customer, it’s amazingly frustrating to have to deal with a high level of annoyance every time I open an SR.  I’ve resolved to open SRs every time I get frustrated with My Oracle Support.  Meaning I’m not going to waste my time searching their awful site, I’ll waste some analysts time.  A perfect example is their new certify interface.  It’s wholly unusable as far as I can tell.  Whoever is in charge of it should be fired and publicly chastised.  The kind of thing you would wish only on your worst enemy, except in my case, I’m a paying customer having to deal with this.  So I don’t even try.  I just open an SR and ask if a particular configuration is certified, or I go to a less official channel like Steven Chan’s blog for clarity.

Recently, we started testing some Windows 7 machines for future deployment in our enterprise.  One problem we noted had to do with the focus of reports opened within the professional forms.  Under 64-bit Windows 7 (Windows on Windows mode) we saw a behavior the same as the old 32-bit XP; the report would pop up “in front of” the existing professional form, and you’d know very clearly that the output had opened.  Under 32-bit Windows 7, the report got “buried” in the new taskbar, behind an existing IE8 window.  In the case of a .pdf output, the .pdf would open and at least flash the taskbar, but not come to the forefront of your screen.  This is confusing, and would likely lead to dozens of report outputs being opened before the user might seek help or give up entirely.

Given that we had applied all Win 7 compatibility patches, I thought I’d see what support said about the issue.  I admit, I’m not entirely clear whether this is a Win7 issue or an AOL/FND type issue, but if Oracle has certified this OS, surely they’ve seen this before right?

SR Creation: Where are you AOL?

I go to open the SR, and can’t find my product.  I search the drop down list.  I search the Advanced Search.  No AOL.  I have finally resolved to just work within the awful confines of My Oracle Support, so I open the SR under any random product (in this case, Oracle Application Server Integration B2B).

I opened my SR with this line first:

First, let me apologize, this isn’t a BOM issue, but I could not find the AOL product anywhere on My Oracle Support (which is largely unusable).  Once this SR gets transferred, here’s the issue:

As evidenced by the screenshots attached, in Win7 (32-bit) when running 11i (all compatibility patches are in from the techstack) and running a report, the focus of the report does not come to the screen front like it did with XP.  Meaning, I click view output, and apparently, “nothing happens” because the report (whether embedded in IE8, or in Acrobat) goes to the background “stack” at the bottom of the screen.  This is very counter intuitive, and in our environment will no doubt end with about 30 IE sessions opened unbeknown-st to the user.

Thanks for the spam!

Within seconds of submitting the SR, I get this spam from Oracle.  I don’t use configuration ID’s because they’re all wrong and never have the right selection available no matter how many times I update them.  Thanks for the opinion though!

Dear My Oracle Support Customer

Service Request #3-1000704931 does not have Configuration Id, it is recommended that you provide one to receive a faster solution.

Thank you,

The My Oracle Support Team


You know how in spy movies, someone gets interrogated just for the sake of being tortured?  That’s how I often feel with Oracle Support.  Here’s what my analyst came back with:

Has something changed in the options settings for IE for PDF files? A setting change
Can you open pdf files from non oracle products
Can you test on Firefox if it is installed
Also what is the version of IE and what is the version of JRE that you are using

Has something changed?  No, I told you this was a vanilla, fully certified, Win 7 install.  How is opening pdf files from non-oracle products relevant?  I specifically said .pdf files worked, just went to the background.  My favorite is “test on Firefox”.  Yes, we’re going to change our IT browser policy because an Oracle tech wanted to take the easy way out.  But the best:  What version of IE are you using. Hey genius, I said IE8 when I opened the SR.

The Bottom Line

As stated before, many time, I’m not an Oracle hater, I’m an Oracle skeptic.  When this is my average experience with support, I grow frustrated, weary, annoyed, and wonder why I pay so much for so little.  In the end, I’ve already given up on this SR.  I don’t believe there’s any way the analyst can ever fix my problem, because he’s not even listening to my problem.  This is my experience at least 75% of the time.

*edit* As a follow up, I had a good conversation with some folks at Oracle regarding this post, both in person and via email.   I am satisfied that there is understanding that the complaints I cite are valid, and they are aware of the issues and don’t necessarily dismiss them outright.  In other words, Oracle, or at least some people at Oracle, are aware of the problems with My Oracle Support, and are working to remedy these kinds of annoyances.

March 2, 2010


Filed under: 11g, 11i, Oracle — kkempf @ 9:23 pm

Last Wednesday and Thursday, myself and a colleague traveled to Charlotte, NC, for the SEOUC annual conference.  It’s a really economical way to get a pulse on what’s going on in the immediate area, see some of the new technologies, and see what other folks are up to.  All in all, we walked away with a mixed impression of the value of going (not unlike Open World) and probably came away with a few valuable ideas and a bit of wasted time.

I walked away very impressed from a presentation on OBIEE for Oracle E-Business suite.  I’d heard the hype for a few years, but never seen it in it’s present iteration (10g was presented, with a hint at the improvements in 11g).  It’s expensive! I know Oracle doesn’t exactly give away their products, but this one is quite the cost difference from lowly Discoverer.  Alas, I feel the writing is on the wall for Discoverer; it feels like Oracle will support it because it must, for a little while, but it’s definitely not going to be a focus from Redwood Shores.  That said, it’s paid for, and looks like R12 will/has picked up a cert with Discoverer 11g, so it will  be around for a little while.  Regardless, I “saw the light” with OBIEE; it’s a mature product with impressive capabilities rivaling any competitors in the field.   Well implemented, it has the potential to augment and possibly replace the never-ending cycle of custom report building in 11i.  It does, however, take a more sophisticated user to fully utilize it’s features, and realistically, 90% of the features would probably only be within the reach of 10% of the user base.

Another take away was the importance of BI Publisher these days (formerly XML publisher).  We’ve not fully embraced BI Pub, but we will now, pending a licensing query to our sales rep.  I was always under the impression BI Publisher was a freebie; that’s not necessarily the case.  It appears that a license for Developer Suite (Forms/Reports) covers us, but my recommendation is to confirm that or risk getting bit by Oracle licensing in the future.  If you read the information at or OTN, it’s less than clear.

I sat in on a great presentation on Forms personalization, and never realized the power within 11i that one had over various field including validation, pop up messages/warnings and the ability to update or hide certain fields of a form based upon interaction with other fields.  Another presentation of note explained an impressive open-source PL/SQL package which allowed content rich Excel (Excel XML) spreadsheets to be built based on passed parameters; it’s a handy tool if you have the need to write more sophisticated reports.

Well, I didn’t win any of the vendor prizes this year, but I really didn’t need another iPod or a Kindle either.  If you have any interest, you can review various presentations at the SEOUC website.

Create a free website or blog at