Conference Organisation from the Inside – UKOUG Tech14

An interesting experience I have had this year is being more involved in helping organise the annual UKOUG Oracle Technical Conference – Tech14 this year. I fully intended to blog about things as we progressed, but it never happened. But I thought it would be interesting to do a couple of blogs about it, for anyone interested,

If you have never helped organise a conference or user group meeting then you probably think there is (more...)

Quantum Data

That’s data that isn’t there until you look for it, sort of, from the optimizer’s perspective.

Here’s some code to create a sample data set:

create table t1
with generator as (
	select	--+ materialize
		rownum id
	from dual
	connect by
		level <= 1e4
	rownum					id,
	mod(rownum-1,200)			mod_200,
	mod(rownum-1,10000)			mod_10000,
	lpad(rownum,50)				padding
	generator	v1,
	generator	v2
	rownum <= 1e6

		ownname		 => user,
		tabname		 =>'T1',
		method_opt 	 =>  (more...)

Progress update on my AWR repository

I received an email from a team member yesterday

Have you seen this?

Interesting idea – ever thought of implementing it?

Well of course I have implemented a AWR data repository and I thought I would catch-up on where I am with it and how it is being used.

The database started out on HPUX on about 2 years ago and is now on Linux on 11. (more...)

OTN APAC 2014 – Auckland – Day 1

So it was really day 2 of the conference, but it was day 1 for me, so that’s the way I’m naming it… :) There were seven tracks available, but I’ll be speaking about what I saw…

First up was the keynote by Tim Ebbeck called 10 Rules of Transformational Leadership. I’m not the biggest fan of keynotes, but this one was pretty cool. To summarise:

  1. Nothing beats being as good as you can be. Get (more...)

OTN APAC 2014 : Auckland Day Off

The first day of the Auckland conference was made up of hands-on labs and workshops. I wasn’t presenting, so I arranged to meet up with some friends and have a play day. :)

On my way out of the hotel I saw Osama Mustafa, who is still looking buff like a Teenage Mutant Ninja Turtle. On the way to the station I met Anton Els, which was a pleasant surprise. We chatted for a (more...)

The Myth of Great Places to Work

Why do people have this crazy obsession of working for a specific company, or the perception that a company is great or not so great? People—especially those immediately around you—make up a huge part of the attractiveness of a company to work for; not companies themselves. Consider these factors first before you choose one to be a "dream" company.

It's not the traditional blog post I generally write. But it's something I consider near and (more...)


“You can’t compare apples with oranges.”

Oh, yes you can! The answer is 72,731,533,037,581,000,000,000,000,000,000,000.

SQL> create table fruit(v1 varchar2(30));
SQL> insert into fruit values('apples');
SQL> insert into fruit values('oranges');
SQL> commit;
SQL> begin
  2  	     dbms_stats.gather_table_stats(
  3  		     ownname	      => user,
  4  		     tabname	      =>'FRUIT',
  5  		     method_opt       => 'for all columns size 2'
  6  	     );
  7  end;
  8  /
SQL> select
  2  	     endpoint_number,
  3  	     endpoint_value,
  4  	     to_char(endpoint_value,'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx') hex_value
  5  from
  6  	      (more...)

Oracle Database 12C Certified Professional SQL Foundations by Steve Ries; Infinite Skills

How to become Become an Oracle Certified Associate? That's a good question for some people who want to start working on Oracle Database and get first Oracle Certification for their work life. Step 1 - Pass one SQL Exam: Oracle Database 12c: SQL Fundamentals 1Z0-061 or Oracle Database 11g: SQL Fundamentals I 1Z0-051 or Oracle Database SQL Expert 1Z0-047. Step 2 - Pass Exam Oracle Database 12c: Installation and Administration 1Z0-062.
With Step 1 -  Oracle (more...)

Change Parameter Value In Another Session

RSS content

The values of initialization parameters in another session can be changed  using procedures SET_BOOL_PARAM_IN_SESSION and SET_INT_PARAM_IN_SESSION provided in DBMS_SYSTEM package.

Let’s demonstrate:

SQL>conn / as sysdba

SYS> grant dba to hr;

– Currently parameter HASH_AREA_SIZE is set to 131073 in HR session

HR>> sho parameter hash_area_size

NAME                                 TYPE        VALUE
———————————— ———– ——————————
hash_area_size                       integer     131073

– Find out SID, SERIAL# for HR session

SYS> select sid, serial#, username from v$session where username=’HR’;

SID    (more...)

Oracle Virtual Technology Symposium: Download

For all those who attended my session today in Oracle Virtual Technology Summit on InMemory, thank you very much. Some questions were cut off towards the end since it was an automated session. I will be happy to answer, if your question was in that category.
Since this was an on-demand show, you can watch the replay anytime by visiting this site. Remember, this requires a connection to watch; it's not a download. You can  (more...)

OTN APAC 2014 : Bangkok to Auckland

I left the Bangkok event straight after my session, went back to my hotel to get my luggage, then got a taxi to the airport. I was a little worried as people said the traffic would be horrific. Luckily I beat the worst of the traffic and my hotel was very close to the highway. I got to the airport with about 3 hours spare, which sounds like a lot, but for Bangkok airport I (more...)

Oracle Big Data Appliance X4-2: First impressions

The last 2 weeks we are lucky enough to have the Big Data Appliance (BDA) from Oracle in our lab/demo environment at VX Company and iRent. In this blog post i am trying to share my first experiences and some general observations. I am coming from an Oracle (Exadata) RDBMS background so i will probably reflect some of that experience on the BDA. The BDA we got here at is a starters rack which consists (more...)

Off May Not Be Totally Off: Is Oracle In-Memory Database 12c ( Faster?

Off May Not Be Totally Off: Is Oracle In-Memory Database 12c ( Faster?

Most Oracle 12c installations will NOT be using the awesome Oracle Database in-memory features available starting in version This experiment is about the performance impact of upgrading to 12c but disabling the in-memory features.

Every experiment I have performed comparing buffer processing rates, clearly shows any version of 12c performs better than 11g. (more...)

Followup on the 4k DML bug

Another piece of good news — Oracle has opened a bug for yet another anomaly I reported earlier in my blog: row-by-row processing of bulk DML when the block size on the target table is less than the default 8k. So it’s now officially bug 20039770 – “DML SLOW WITH 4K BLOCK SIZE VS 8K BLOCK SIZE”. Their bug description seems a bit off (because 2K shows the same behavior as 4K, and 16/32K as (more...)

Think Stats, 2nd Edition Exploratory Data Analysis By Allen B. Downey; O’Reilly Media

Lots of Python with data analysis books. This might be a good one that is able to help readers perform statistical analysis with programs written in Python. Think Stats, 2nd Edition Exploratory Data Analysis by Allen B. Downey(@allendowney).
This second edition of Think Stats includes the chapters from the first edition, many of them substantially revised, and new chapters on regression, time series analysis, survival analysis, and analytic methods. Additional, It uses (more...)

Plan puzzle

I was in Munich a few weeks ago running a course on Designing Optimal SQL and Troubleshooting and Tuning, but just before I flew in to Munich one of the attendees emailed me with an example of a statement that behaved a little strangely and asked me if we could look at it during the course.  It displays an odd little feature, and I thought it might be interesting to write up what I did to find (more...)

OTN APAC 2014 : Bangkok

I spent a long time in bed last night, but it was quite fitful sleep. As a result, I slept in late this morning, which wasn’t really a problem as I was not speaking until 14:45.

The Bangkok event was a single-track event, with the following running order.

Repair Replicat after mount point name change

Working on Oracle GoldenGate can be an interesting adventure. In such a case, I have been doing some migration work for a client. Half way though the migration, the target system ran out of resources need to create the tablespaces and store files export and trail files (i.e. disk space and a story for another time). The impact to the migration was that everything had to stop until resources were allocated.

Part of the (more...)

Alerting on plans that change for the worse

I’ve uploaded a monitoring script that I have worked on: zip.

The script alerts you when the optimizer runs a SQL statement with a potentially new and inefficient plan so you can intervene.  This script improves upon my earlier script which only alerts you to SQL statements running with new plans.  The new script compares the average elapsed time of the current plan with the average of the most often executed plan.  (more...)

Case Sensitive Passwords in Oracle 11

In version 11, Oracle passwords became case sensitive. You can see what I mean in the example below:

SQL> conn / as sysdba
SQL> alter user system identified by manager
  2  /
User altered.
SQL> conn system/manager
SQL> conn system/MANAGER
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
The DBA_USERS view no longer contains the encrypted password, except when the user (more...)