Jonathan Lewis

I am finally getting around to finishing my four-part blog series on people who have had the most influence on my Oracle performance tuning work. The previous three people were Craig ShallahamerDon Burleson, and Cary Millsap. The last person is Jonathan Lewis. These four people, listed and blogged about in chronological order, had the most influence on my understanding of how to do Oracle database performance tuning. There are many other great (more...)

Partially Applied Functions in JavaScript

First of all, what are partially applied functions? There’s a little bit of theory here. The concept of partially applying functions stems from the functional way of programming. There it’s tightly linked with a concept called currying. Currying says that every function can be written as a function with only one parameter. By currying and un-currying you can achieve this goal. If this sounds very hard and complex, do not fear, in essence it’s quite (more...)

Collaborate 2016 Oaktable World Sessions

Oaktable World Las Vegas is happening at Collaborate 2016! Many thanks to Tim Gorman, Alex Gorbachev and Mark Farnham for organizing!
Free Oaktable World t-shirts available at Delphix booth 1613 on Tuesday and at the Oaktable World talks on Wednesday. Also available at the Delphix booth is free copies of Mike Swing’s “the little r12.2.5 upgrade essentials for managers and tema members”. Mike will be doing Q&A at the Delphix booth Tuesday 1:15-2:00 and book (more...)

Inflexible Security (MailChimp fail)

Maybe I shouldn’t have written about flexible security, because I immediately starting hitting inflexible security, locking me out.

Today’s fail is courtesy of, which I use for my newsletters. It’s OK that they decided they want a confirmation when I log on to my account from India, but it is not OK that they require a text message passcode with no other option.

I have my phone in flight mode, because I don’t (more...)

Force OEM to Discover HA Systems

You know there’s a cluster and that means that an HA system exists, but OEM won’t discover it.  Of course that means that your RAC databases can’t be discovered either and all of this is making you cranky.  Take a deep breath.  We can fix this.

The agent can only recognize an HA system when it knows of the clusterware home.  For some reason the agents weren’t aware of the CRS_HOME on some of our (more...)

New APEX training in Vienna – APEX Debugging and Performance

Just a quick note: I’ll be holding a 1-day APEX training class on April 21st in Vienna, Austria.

In this training I’ll teach you how to debug your APEX applications, how to find problems and bugs and how to speed up your application.

Interested? Go here and sign up:

Resolve ‘Device or resource busy’ problems

Upgrading opatch utility consists of two steps

  1. Remove the old copy of opatch by deleting $OH/OPatch directory
  2. Unzip the replacement file into your Oracle home directory

But when you try to remove the contents of OPatch directory you get slammed with errors like this:

rm: cannot remove `jlib/.nfs0000000005213282002649ad’: Device or resource busy
rm: cannot remove `jlib/.nfs000000000523b2e4002649ae’: Device or resource busy

rm: cannot remove `ocm/lib/.nfs0000000005226a87002649b3′: Device or resource busy
rm: cannot remove (more...)

How to update a custom public theme in Oracle APEX

In the last post I showed how you can upload a custom theme to the instance repository so that all your developers can choose that theme within the create application wizard. And more importantly, subscribe that theme from the theme repository.

Now the next question is how to update that public theme so that all applications can inherit the changes.

My first attempt was to simply go to Instance Administration – Manage Instance – Public (more...)

DB2 fully supported on Delphix

I’ve received a number of inquiries lately about the support of DB2 on Delphix and yes, Delphix 5.0 now supports full automation of virtual data for DB2. With the addition of DB2, Delphix now supports full automation of virtual data on all three of the major enterprise databases

  • Oracle
  • SQL Server
  • DB2

as well as Sybase, MySQL and Postgres.

For more information on DB2 in Delphix 5.0 see

Creating a custom public workspace theme

The Universal Theme introduced with APEX 5 is immensly good looking and comes with a powerful Theme Roller to customize it.

With that new theme most, if not all, older themes are obsolete.

That leaves us just with a few corporate designs which can’t (or don’t want to) be replaced by the UT.

Now ideally you want your developers to use that custom theme in all applications and also subscribe to that.
Historically I recommended (more...)

AuraPlayer takes Barcelona by Storm at the Mobile World Congress

AuraPlayer was thrilled to attend Mobile World Congress (MWC) in Barcelona. It was our first time attending this epic conference, and we can assure you it lived up to all the hype.


Suhas Uliyar, Oracle’s VP Mobile Strategy, visits the AuraPlayer Booth

The conference emphasized the mobile revolution occurring throughout all industries and how organizations need to mobilize their business practices or they’ll be left behind. This further reinforces what Grant Ronald always says, “If (more...)

Cedar’s Oracle Cloud Day 2016 – Recap

Cedar held its annual Oracle Day in Oracle’s City office last Thursday – it was actually our 6th year of running the event. The attendance was great – just short of 100 – and with 3 streams of content there was plenty to choose from. If you weren’t there, here’s the highlights of the sessions that I attended:

After the opening keynote from Dan Woolstone, Oracle’s James King and myself spoke to a full room (more...)

PL/SQL Functions in the WITH Clause and Read (In)Consistency

A question was raised in Martin Widlake’s session this morning in OUG Ireland 2016. The (excellent) session was about the performance of calling PL/SQL functions from SQL, and Martin scared the audience (or at least tried to scare…) with the fact that read consistency is not kept (with respect to the base SQL statement) when the PL/SQL functions are called from that SQL statement.
The question that was raised was whether this is also (more...)

catalog start with rman hangs

When I am trying to restore the full database to target new host,  I have used to catalog the backup piece but It took more time but not complete

RMAN> catalog start with ‘/u02/backup/backup/’;

Starting implicit crosscheck backup at 26-FEB-16
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=6 device type=DISK
Crosschecked 27 objects
Finished implicit crosscheck backup at 26-FEB-16

Starting implicit crosscheck copy at 26-FEB-16
using channel ORA_DISK_1


Solution :

Disable the recovery file destination, and (more...)

Setup DNS for RAC 12c implementation in virtual Box

If you are plan to implement rac setup in virtul box for your lab practise, you need to setup a dns configuration necessary steps to use single client access name (SCAN) introduced in 11gR2 RAC.

The DNS setup may be a separate server, or you can make it on any one of the nodes you’re preparing for rac implementation.

Here I have chosed to setup on rac first node, so you need to do some (more...)

OCI Client-Side Deployment in 12C

The 12c version has introduced a new features called “OCI Client-Side Deployment Parameters” this feature gives you the possibility to override some OCI parameters without even changing your application code.

Let’s make a simple test case using Python and the cx_oracle module (which use the OCI interface) for connecting to the oracle database.

You can find this module for your python version and the database 12c version here.

This is the code of our test case:

#! (more...)

Backup the Siebel Gateway name server data

Its necessary to take the backup of siebel gateway name server data before or after making any configuration changes.  So you should take the backup of siebns.dat file

Application :

Administration-  system configuration –> Enterprises

Click Backup enterprise ( it will generate siebns.dat along with date in gateway server).

or Command prompt

[siebel@premiadb siebsrvr]$  srvrmgr /g premiadb /e MigEnt /u SADMIN /p  password

srvrmgr> backup nameserver
Command completed successfully.

We can use below (more...)

Step by step Siebel 15.0 Industry applications installation guide on Redhat Linux 6.2

Hello Guys, If you are looking the siebel installation guide on redhat linux 6 , this document will guide you to install  siebel 15.o industry application on redhat linux 6.2.  This document may be useful for you when you’re going to deployment siebel on your environment.

Download the document :

Step by step Siebel 15.0 industry applications installation guide on Redhat linux 6.2

Plotting SLOB results in high resolution


If you work with I/O benchmarking of Oracle databases, you are almost certainly familiar with SLOB. SLOB is more than just an I/O benchmark — it’s become a de-facto industry standard. It’s simple, powerful and efficient, and it captures a plethora of metrics, both from the OS (output of iostat, mpstat etc.) and the database itself (in the form of an AWR report).

One thing that is missing though is visualization. It’s fairly (more...)

Repository Database License Cost for Oracle Forms 12c Explained

Michael Ferrante, the Oracle Form Product Manager, has been asked to clarify the database repository licensing for Forms 12c. He was generous enough to share his response with the Oracle Forms Community as the second post in our Oracle Forms 12c guest series.  If you’re a Forms guru and want to contribute click here for more information.

Be sure not to miss our webinar with Michael on 2/29 at 1pm EST: Oracle Forms 12c: New Features Unveiled and (more...)