Life before these features existed…

Some Oracle features are so useful you quickly get to a point where you can’t remember what life was like before them. Three that spring to mind today are the DBA_SCHEDULER_JOB_RUN_DETAILS view, the DBMS_MONITOR package and the DBMS_METADATA package.

When using the new 10g scheduler, the DBA_SCHEDULER_JOB_RUN_DETAILS view provides a history of previous job runs. It’s cool to query this and see how the run duration of particular jobs varies during the course of the day, or between days, allowing you to do trend analysis over time. It’s not rocket science to store this information in a table yourself, but it’s nice that it happens straight out of the box.

The DBMS_MONITOR package is part of the end-to-end tracing available in 10g. It allows you to initiate tracing for one or more sessions, where the sessions are identified using combinations of criteria including: service, module, action, client_identifier or just the plain old sid. The really cool thing about this is that it doesn’t matter how many sessions match the criteria, or which RAC nodes they are running on, they all get traced. You can then consolidate all the trace files into a single file using the trcsess utility so you can use TKPROF as normal. This is way cool!

The DBMS_METADATA package was introduced in Oracle9i to allow you to extract DDL or XML definitions of database objects. Most tools like PL/SQL Developer and TOAD allow you to do this easily, but from the server it was always a pain. I used to spend ages writing and maintaining scripts to do this, and invariably they didn’t work for some features. This package threw all that out of the window. Today a friend asked me how he could dump out a schema creation script and I was in the middle of explaining about DBMS_METADATA when I remembered he works on 8i. Bummer…

I use these things all the time so the thought of moving back to 8i or 9i fills me with dread!

Someone mentioned recently that Oracle 11(xyz) is scheduled for release in November next year. That sounds a little early, but if it’s true I wonder how long it will be before I’m saying, “I’d rather quit than work with Oracle 10g!” 🙂

Cheers

Tim…

RAC Success Story…

Yesterday I did an new installation of 10g RAC on a 2 node Tru64 cluster. It was totally clean, unlike the 9i to 10g upgrades I’ve done before.

Once the software was installed I had to create a copy of our current production system on it from an RMAN backup done using HP Data Protector. The whole restore and recovery went through without a hitch.

Days like that restore your faith in Oracle, and your backups 🙂

Cheers

Tim…

10g CRS restart after power failure, feature or bug?

In 10g RAC the Cluster Ready Services (CRS) software is installed in it’s own $ORACLE_HOME, for the sake or argument let’s call this $CRS_HOME. In this directory there are a number of subdirectories including:

  • $CRS_HOME/crs/init
  • $CRS_HOME/css/init
  • $CRS_HOME/evm/init

When the CRS daemons are running these directories contain an assortment of files with names like:

  • myserver.mydomain.com.pid
  • .lock-myserver.mydomain.com
  • myserver.mydomain.com.lck

When CRS is shutdown cleanly these files are managed such that CRS will start up again without manual intervention, but when there is a power failure on one or more nodes the files aren’t cleaned up. The affect of this is that the CRS daemons won’t start properly until you manually clean up the mess.

RAC is a high availability solution, but it is crippled by a power failure. Is that a bug or a feature?

Note. I’m talking about the way CRS (10.1.0.3.0) works on Tru64. I’d be interested to know if it’s the same for CRS on other platforms. Also, I believe some changes have happened to the startup and shutdown of CRS in 10.1.0.4.0, but that’s not released for Tru64 yet, and a recent message on a HP forum suggests that Oracle will skip this patch and wait for 10.1.0.5.0 for Tru64.

Fun, fun, fun…

Cheers

Tim…

Rebrand and all the bugs disappear…

So OCS 10g has been released and it’s “a member of the Oracle Fusion Middleware family of products”.

Let’s hope that during the upgrade to DB10g and AS10g they actually thought about the stability of the product, not just packing in more functionality that most people won’t use.

The next hurdle for me is getting the people here to buy in to an upgrade. My feeling is that the current verison is so bad, what have we got to lose! I don’t think they’ll see it that way 🙂

Cheers

Tim…

My OCS Hell…

I don’t know if you know this, but I hate Oracle Collaboration Suite (OCS). It is the most useless pile of camel dung I’ve ever cast my eyes upon. It’s really is not worth the price of the CDs it’s delivered on.

Yesterday it crashed in the afternoon so I restarted it all (DB, infrastructure and 3 middle tier servers). By the time I got home it had gone again, so guess what I had to do… Restart the lot again. About an hour later it had gone again, but I wasn’t at home so a collegue had to do the honours. My last text message on the subject was a little after 22:00. This morning I get to work and (can you guess what’s coming next?) it has all crashed again. At least it’s consistently rubbish!

My only hope is that my company give up on it, rather than wait for Oracle to fix it, because I know Oracle will focus on adding more gimics to it, rather than getting it to work properly.

My advice to anyone contemplating using this product is DON’T!!!!

If you are forced to use it, like me, consider hiring people to cover a 24 hour reboot service!

Cheers

Tim…

Article accepted for IOUG SELECT magazine…

I got an email yesterday saying that an article of mine has been accepted for the IOUG SELECT magazine. The article is a small section from the book I’m currently writing, which should be finished by the end of this month. I’m not sure when the article is going to be published so watch this space…

I’m looking forward to finishing the book and getting my teeth stuck into Oracle 10g Release 2. I’ve been so busy recently that I’ve not had much time to check it out, and as a result I’ve not been adding many new articles to ORACLE-BASE.com. A situation that will be rectified soon 🙂

Cheers

Tim…

Dodgy SQL and Dodgy Products

Dodgy SQL
Developer: What’s wrong with this SQL statement?
Me: I’ve done an SQL trace on it and it churns through 1.6 Gig of data, 0.3 Gig from disk taking 439 seconds, the rest coming from memory, but incuring a 140 second delay due to assorted cluster waits.
Conclusion: It’s a quality statement, not! 🙂

Dodgy Products
My hatred for Oracle Collaboration Suite (OCS) is growing by the day. It’s completely…

I’ve decided to take leaf out of David Aldridge’s book and create a list of my own:

Alternative meanings for the OCS acronym:

  • Overly Complicated Sh*t
  • Obtuse Craptastic System
  • It doesn’t work, it’s complete crap, just ditch it and write something decent that works and doesn’t need loads of harware to do a really simple job!

OK, the last one doesn’t quite work, but the sentiment is spot on! Please feel free to contribute your own ideas 🙂

By the way, did I mention that OCS is a steaming pile of…

Cheers

Tim…

PS. Oracle applications are a total mess as well.

PPS. The application servers are a nighmare. Hopefully Larry will get his head out of his ass and do something about them!

PPPS. Why are there so many bugs in the DB these days?

Symptoms and Oracle 10g R2 for Windows

Yesterday I sounded like Barry White, today I can’t speak, much to the delight of my co-workers. I feel fine, but when I talk nothing comes out. Perhaps I should write all this text with a white font on a white background to simulate my current situation.

This reminds me of a summer holiday during University, when I worked on a production line in a factory for 3 months. All but one of the guys I worked with were deaf, and the one guy that could hear was at the other end of the line so I never got to speak to him. Fortunately the guys were really good at lip reading, so for 3 months I talked at work mostly without making any sound. I remember having a “chat” in the canteen one lunchtime and I started to speak out loud and got some funny looks from some of the guys off another line. It was only then I realized they had assumed I was deaf to as they had never heard me speak out loud 🙂

I had to teach a class last night using the “do as I do” method. Thought I would save my voice. Fat lot of good that did me!

I’ve just noticed that a Developers Release of Oracle Database 10g Release 2 (10.2.0.1.0) for Microsoft Windows is available for download. Not sure what’s missing from this, but it’s not a fully supported production release like the Linux version.

Cheers

Tim…

Bits and bobs…

David Aldridge’s blog contains links to a couple of handy Firefox search extensions here. Thanks to all involved. I’m making good use of them.

Howard Rogers made reference to Desktop ASM in one of his recent answers on the Dizwell Forum. Sounds like it’s worth a play. I haven’t managed to play with ASM very much. We made the transition from 9i RAC to 10g RAC really early and at the time there was very little to suggest that ASM had been used in anger. As a result we made the decision to avoid it, which on reflection was a pity.

I’m feeling a little under the weather this week. On Monday my nose was blocked. On Tuesday I felt fine. On Wednesday my throat was a little sore. Today I woke up sounding like Barry White (should have recorded an album), but now I sound normal and my nose is dodgy again. I have no idea what is going on. Let’s see what the symptoms tomorrow brings.

Isn’t it great when two separate members of the team, in this case a developer and yours truly, are independently asked to solve a problem and come up with the same solution. The question is, do we have equally good or equally bad solutions? I guess both 🙂

Cheers

Tim…