Top 60 Oracle Blogs

Recent comments

January 2013

Blog advert

Just a quick note to say that I found a blog over the weekend with a number of interesting posts, so I thought I’d pass it on:

There’s a really cute example (complete with test case) of an optimizer bug (possibly only in 11.1)  in the December archive:

Oracle and the cloud. A brief history…

This morning I read this post about Oracle Cloud from Tuula Fai.

What really annoys me about this post is I was at Oracle OpenWorld (about 3 years ago) when Larry was on stage telling us that Cloud was a meaningless fad. Fast forward to OOW 2012 and it would be easy to believe that Oracle invented the cloud, as I mentioned here. At OOW 2012 he openly stated Oracle started to write Fusion Apps for the cloud 7 years ago. Dude! That is not true. You initiated a program to rewrite Fusion Apps to be a browser-based replacement for EBS, which then happily coincided with the whole cloud thing at a later date. At least this post acknowledges that could have been an accident…

Oracle 11.2 and the direct path read event

In my previous post I touched the topic of a “new” codepath (codepath means “way of utilising the operating system”) for of full segment scans. Full segment scan means scanning a segment (I use “segment” because it could be a partition of a table or index) which is visible commonly visible in an explain plan (but not restricted to) as the rowsources “TABLE ACCESS FULL”, “FAST FULL INDEX SCAN” and “BITMAP FULL SCAN”.

Look at my presentation About multiblock reads to see how and when direct path reads kick in, and what the difference between the two is. Most notably, Oracle has released very little information about asynchronous direct path reads.

Nexus 4 : Broken Back Panel (Final Update)…

Today I received a case for my Nexus 4. I got this case for £2.90 from Amazon along with free delivery. It came with a screen protector and polish cloth. :)

I put some sellotape over the shattered glass on the back, but couldn’t be bothered to tape over all the radiating cracks, since they are not shedding glass shards. I put the phone into the case and I’m now going to try my best to forget that LG (and Google by association) are a bunch of asses over the design of the back panel of this phone.

From a functional perspective, it’s hard to tell the phone apart from the Nexus 7 tablet, so I have no gripes in that respect. My rantings have purely been about the terrible choice of materials for the back panel.


A recurring question in my classes is how Oracle Automatic Storage Management (ASM) calculates the REQUIRED_MIRROR_FREE_MB and USABLE_FILE_MB disk group values. As usual the answer is: It depends! ;-) In short: the REQUIRED_MIRROR_FREE_MB value in V$ASM_DISKGROUP indicates how much free space is required in an ASM disk group to restore redundancy after the failure of […]

Oracle Linux support in ESXi

For quite some time now I am using ESXi 5 update 1 for my lab server and I’m very happy with it. In my lab environment I am not too picky what to run and do not worry about support too much. It’s not production!

One area of concern has been the support for Oracle’s own kernel: UEK or Unbreakable Enterprise Kernel. UEK comes in two editions, one based on 2.6.32, just like Red Hat’s kernel for Red Hat 6. The difference is that you can get UEK/1 ( for Oracle Linux 5.x as well instead of 2.6.18xxx which is otherwise the default.

Oracle’s second iteration of kernel UEK is unsurprisingly named UEK2 and it’s initially based on 3.x but keeps the name to 2.6.39.x for compatibility reasons. UEK2 has some really nice features taken from the Upstream kernel and it is also supported for the Oracle database.

Skip Scan 2

Here’s a question that is NOT a trick question, it’s demonstrating an example of optimizer behaviour that might come as a surprise.
I have an index (addr_id0050, effective_date), the first column is numeric, the second is a date. Here’s a query with an execution plan that uses that index:

No 3d charts in Excel? try R


I wanted to plot a set of data by 3 dimensions.

I wanted to plot I/O read latency by MB/s throughput by number of concurrent readers. Seemed simple. Well it turns out there is no good way to do it in Excel. Sure Excel has 3d charts but, attention, the z axis is treated like rows and not values. For example

Note that the z axis, “users” had 3 values marked  on the axis. Those 3 values are 1,16 and 64. Notice that  16 is as far from 1 as 64 is from 16, ie the distance is not proportional to the value.

There is a free plug-in for Excel called Excel3Dscatterplot, but the data is hard to read, for example

Luckily R saves the day. With R there are a number of easy ways to graph 3d data.

Nexus 4 : Update from LG over broken back panel…

I just got off the phone to LG about this piece of crap Nexus 4 phone. Their response is physical damage is not their responsibility, so I will have to pay for a repair. I suggested that designing a phone that will shatter when it is placed on a room temperature surface (yes, that really has happened to people) constitutes a design flaw and they should repair it for free. After much whining on my part their stance is unchanged at this time. I guess if enough people contact them to complain they will have to take responsibility…. Maybe…

So if you end up getting one of these super-fragile phones, please save yourself a lot of grief and buy a case that covers the back completely. It’s the only way you are going to make it past a week without breaking it.