Who's online

There are currently 0 users and 18 guests online.

Recent comments

June 2014

Troubleshooting Oracle Performance, 2nd Edition – Downloadable Files

This is just a short post to point out that the downloadable files are available here. You can download either a ZIP or a TAR file containing all files, or single files.

Since every file has its own URL, you can also directly executed them in SQL*Plus. For example:

SQL> @

I’m sorry for the delay!

London Oracle CLub

Some of you will be aware of the LOB – London Oracle Beers. It is an informal group of us London- based people who work in the Oracle sphere and who also like to have a pint (be it beer, cider, larger or diet coke). We mostly just catch up as friends and talk rubbish and, amongst that, discuss topics related to Oracle technologies. Something we occasionally talk about it whether we should make it a little more formal and have presentations on Oracle topics.

Well, thanks to Jonathan Lewis and with the support of e-DBA, I’m pleased to say that Club Oracle London is born. I wish they had called in London Oracle Club :-).

Tuning EM12c- Onto the Next Tier, JAVA

I’ve already talked about the recommendations we make for properly sizing an Enterprise Manager 12c and many already know about tuning a database, but let’s look at the tuning that may be a bit foreign to DBAs.  We’ll start with Java.

We all know that it’s part of the EM12c architecture, but we often don’t realize that it requires attention to assist in Enterprise Manager running efficiently.

Redo over multiple weeks

#555555;">I’ve always wanted some sort of calendar view of load where I could see patterns across the same days of the week and same hours of the day and then be able to pick different periods and diff them:

#555555;">#2970a6;" href="">

#555555;">The first step of such a display would be selecting the data in such a way to represent the graphic. A graphic should be harder to do than a similar, though less powerful, ascii representation.

Mark W. Farnham, New Hampshire Republican for US Senate

Watch this space as I ramp up my primary campaign in July. You should already be able to get a sense of who I am from the existing posts on this blog. But I’m sure you will want to know more before you line up to vote for me on September 9th in the primary election.


WebLogic 12cR3 articles

WebLogic 12cR3 was released towards the end of last week, so this weekend I had an install-fest.

I also did some minor amendments to some existing articles.

Why does the Optimiser not respect my qb_name() hint?

I recently was involved in an investigation on a slow-running report on an Exadata system. This was rather interesting, the raw text file with the query was 33kb in size, and SQL Developer formatted the query to > 1000 lines. There were lots of interesting constructs in the query and the optimiser did its best to make sense of the inline views and various joins.

New Version Of XPLAN_ASH Utility

A new version 4.1 of the XPLAN_ASH utility is available for download.

As usual the latest version can be downloaded here.

This version in particular supports now the new 12c "Adaptive" plan feature - previous versions don't cope very well with those if you don't add the "ADAPTIVE" formatting option manually.

Here are the notes from the change log:

- GV$SQL_MONITOR and GV$SQL_PLAN_MONITOR can now be customized in the
settings as table names in case you want to use your own custom monitoring repository that copies data from GV$SQL_MONITOR and GV$SQL_PLAN_MONITOR in order to keep/persist monitoring data. The tables need to have at least those columns that are used by XPLAN_ASH from the original views

12c nasty with remote query optimization

We have a fairly common query process, where we run a MERGE command to compare a remote table to a local copy of it, as "poor mans" Golden Gate to bring that table up to date on a regular basis.  [Editors note: Writing MERGE's is more complicated but a lot cheaper than Golden Gate :-)]

After an upgrade to 12c, the performance of some of the MERGE’s went very bad…and you can see what happened with the (sanitised) example below:

The bold part is a join that we’ll be executing on the remote database (mydb). It’s been hinted to run in a particular way.

Testing…the surgeon’s approach

I played a lot of volleyball in a bygone life :-) and subsequently ruined my knees to the extent that I needed surgery. I got a shock when the surgeon (after a series of x-rays and checks) said to me: "Of course, we’ll only know once we’re in there".

So here’s a body part (a knee) that’s had hundreds of thousands of years to evolve, so you’d expect that knees are pretty much the same world wide, yet an experienced and qualified surgeon puts the "we cant be 100% sure" caveat before chopping me open.