August 2, 2007

Diagnosis

I’m back home after two weeks of sun, sea, and wind-surfing – and no Oracle (even though I was in Greece), laptop, or blog to disturb me; which means I now have a two-week backlog to catch up with.

But before I start the real work I thought I’d share a comment I heard from a small child (not one of mine) when she saw the tree on the right … “Look, a pineapple tree!”.

Why, you may ask, should I wish to report this on a technical blog ? Because it’s one of those statements that are simultaneously 100% right, and 100% wrong – depending on your point of view and level of understanding – which means it’s the sort of thing you see all the time in Oracle trouble-shooting.

If you wanted to find a tree that looked like a pineapple you would be hard-pushed to find a better example than this one – so it is a “pineapple” tree. On the other hand if you knew your trees (or fruit) you would know that you weren’t going to find any pineapples in this tree – it’s definitely NOT a pineapple tree.

In the same vein it’s very easy in Oracle to see some symptom and think “I’ve seen that before, I know what it is.” But a single symptom may have many different causes – and it’s too easy to fall into the trap of making a premature diagnosis. If your first thought is along the lines of “I see X, and X is a symptom of Y” then your next thoughts should be:

If Y is the cause, what other symptoms should I see.

What other causes are there for X

What other symptoms do I see which have nothing to do with Y

Remember, if someone tells you they’ve got a pineapple tree – check for pineapples, ask what the funny little berries are, then take a step back and look at the overall shape of the tree.