Oracle internals, debugging and undocumented features

Category Archives: Uncategorized

Reducing cluster waits by Granville Bonyata

If you’re seeing high cluster waits because you have multiple processes all inserting into the same set of tables, the cluster waits are resolved by pointing to a single node on the cluster. But just pointing to a single node defeats the rollover benefits of running on RAC. To that end, Oracle gives us Services to assist with workload management. It’s a TNS entry that <em>prefers</em> a specific node, but will use a secondary instance if the preferred is unavailable. So all processes that use a common set of resources can all be pointed to the same instance, eliminating the cluster waits.

In practice I have seen this improve performance by 500% on high volume inserts, so definitely a feature <a href=”http://docs.oracle.com/cd/B19306_01/rac.102/b14197/hafeats.htm#CHDGEBED” title=”worth checking out.” target=”_blank”></a>


Hotsos Symposium Speaker 2011

I will be speaking at Hotsos Symposium 2011 which will be held March 6 — 10, 2011 at the Omni Mandalay Hotel in Irving, TX.

Presentation Title

Oracle Diagnostic Events


Oracle 11g has a completely new low-level kernel diagnostics and tracing infrastructure built into it. This presentation will explore new diagnostic events. I will cover topics like: how to find Oracle internal documentation about events, sample cases, demos, etc.

For more information please check link bellow:


Hopefully to see you there!

Network Time Protocol ( NTP ) & Clusterware diagnostic script

One of the prerequisites to successfully install  Oracle version 11.2 is to set Network Time Protocol ( NTP )

( file /etc/sysconfig/ntpd )

with -x flag which prevents time from adjusting backward.

This comes very crucial in debugging Oracle Clusterware.NTP will synchronize clocks among all nodes which will make correct analysis of trace files based on time stamps .

Oracle is providing diagnostic collection script diagcollection.pl to collect important log files.

Script is located under  $<GRID_HOME>/bin/ e.g.  /u01/app/11.2.0/grid/bin

It will generate four tar.gz files in local directory which will have following information:

traces,logs and cores for CRS home

ocrcheck , ocrdump

CRS core files

OS logs

After you are done you can clean them with same script.Just run diagcollection.pl -clean option.

Script must be run as root .

MOS notes – Troubleshooting ASM

I just summarized few notes that I have used  for troubleshooting ASM.

Placeholder for AMDU binaries and using with ASM 10g [ID 553639.1]

ASMIOSTAT Script to collect iostats for ASM disks [ID 437996.1]

Information to gather when diagnosing ASM space issues [ID 351117.1]

and of course you can always dump ASM block  using

SQL> alter system dump datafile ‘<+DiskGroupName>/<Filename>’ block X; command to see it inside.

Oracle Patch Set and new patching strategy

Once again Oracle changed patching strategy.

Starting with the patch set, Oracle Database patch sets are full installations of the Oracle Database software. This means that you do not need to install Oracle Database 11g Release 2 ( before installing Oracle Database 11g Release 2 (

Note the following changes with the new patch set packaging:

  • New installations consist of installing the most recent patch set, rather than installing a base release and then upgrading to a patch release.
  • Direct upgrades from previous releases to the most recent patch set are supported.
  • Out-of-place patch set upgrades recommended, in which you install the patch set into a new, separate Oracle home. In-place upgrades are supported, but not recommended.

For detail information read :

Important Changes to Oracle Database Patch Sets Starting With [ID 1189783.1]  patch number is   10098816