Scaling up Cardinality Estimates in

Topic: Counting the number of distinct values (NDV) for a table column has important applications in the database domain, ranging from query optimization to optimizing reports for large data warehouses. However the legacy SQL method of using SELECT COUNT (DISTINCT <COL>) can be very slow. This is a well known problem and Oracle provides a new function APPROX_COUNT_DISTINCT implemented with a new-generation algorithm to address this issue by providing (more...)

New in Oracle 12c: Querying an Associative Array in PL/SQL Programs

I was aware that up to Oracle 11g, a PL/SQL program wasn’t allowed use an associative array in a SQL statement. This is what happens when I try to do it.

SQL> drop table test_array purge;

Table dropped.

SQL> create table test_array as
  2  select level num_col from dual
  3  connect by level <= 10;

Table created.

SQL> select * from test_array;


10  (more...)

Snapshot Too Old 2014-07-30 19:54:00

Mi artículo más reciente para ToadWorld, dentro de una serie dedicada a aplicar patches con mínima suspensión del servicio.

Plan Instability

There seems to me to be a relatively simple choice.

Either you except that the Oracle Optimizer has a wealth of complicated strategies and, in this complex effort to get the best executions it can, will inevitably either get it wrong sometimes (or take some extra executions to realise it’s wrong).

Or you stick your head in the sand and raise a bug for every unexpected poor execution or plan flip.

But let’s say that (more...) Released With Cool Indexing Features (Short Memory)

Oracle Database has finally been released and it has a number of really exciting goodies from an indexing perspective which include: Database In-Memory Option, which enables specific portions of the database to be in dual format, in both the existing row based format and additionally into an efficient memory only columnar based format. This in […]

Oracle 12c Release 1 is here!

After much anticipation the new Release 1 of Oracle 12c ( is finally available! Get it here: What does this mean: Oracle’s ground breaking In Memory Database is now available! As they say…this is BIG. Get more details about In Memory here: I am very excited about the possibilities of what we can […]

Oracle 12c( Has Arrived….

Just checked Tim’s latest post and guess what, Oracle database 12c’s latest release, is available now for download. It is available as an OTN download as well as from E-Delivery. Seems like that there is no documentation update available yet as the New Features guide still doesn’t have included in it. But I am sure that it’s coming soon!

So grab your copy now and happy downloads :=).

Oracle CPU July 2014 + Oracle Exploit CVE-2013-3751

Yesterday, Oracle released a new critical patch update (CPU Jul 2014) for July 2014. This CPU contains fixes for 5 database vulnerabilities. The most critical one, CVE-2013-3751, has a base score of 9.0 and affects Oracle 12.1 only. The same issue was already fixed for Oracle 11.2 in July 2013 (CPU Jul 2013).

After a short research on the web (google and twitter, less than 5 minutes) I found an (more...)

ASM Startup Fails With ORA-04031 After Adding CPUs

A few weeks ago we upgraded one of our production server, adding another CPU tray. This brought the number of CPU cores from 80 to 160, and took us from 2Tb of RAM to 4Tb (just in time for Oracle to announce the in-memory database in!).

However when I went to start things up, ASM wasn't starting up, giving me these errors:

ORA-04031: unable to allocate 32 bytes of shared (more...)

De cómo un clon nos puede ayudar con un patch (updated to 12c)

Cada vez que vamos a aplicar un patch o un patch set update (PSU), el procedimiento tradicional implica detener todos los procesos que se estén ejecutando en el Oracle home directory involucrado, lo cual obliga a que dejemos de prestar servicio para iniciar el patching, proceso que si bien es relativamente fácil y sencillo, está sujeto a eventuales fallas que, de ocurrir, pueden llevar a una situación de crisis en la cual el (more...)

12c Index Like Table Statistics Collection (Wearing The Inside Out)

This change introduced in 12c has caught me out on a number of occasions. If you were to create a new table: And then populate it with a conventional insert: We find there are no statistics associated with the table until we explicitly collect them: But if we were to now create an index on this […]

Installing Oracle Event Processing 12c

A week ago, Oracle released Oracle SOA Suite 12c. In this blog I will show how easy it is to create a Standalone-server environment for Oracle Event Processing (OEP) 12c.

The major new features of Oracle Event Processing 12 are the new integrated development environment based on Jdeveloper and the Event Delivery Network (EDN) event adapter nodes which provide that tight integration at runtime to SOA Suite composites and all other SOA components supporting the (more...)

Installing Oracle SOA Suite 12c Quick Start Distribution

A week ago, Oracle released Oracle SOA Suite 12c. In this blog I will show how easy it is to create a SOA Suite development environment. 

The Oracle SOA Suite 12c Quick Start distributions allow you to quickly install a development or evaluation environment on a single host computer. It only takes a couple of minutes to set it up. 

Before starting the installation, make sure that you have a working Java Development (more...)

Oracle SOA Suite 12c tips – Tuning the SOA infrastructure thread pool

One of the new capabilities of Oracle SOA Suite 12c is the ability to control the SOA infrastructure thread pools, except the resource pools for EDN and the adapters, with Oracle WebLogic Server work managers. Each partition will has its own work managers defined. This allows you to separate services in partitions and, to some extent, tune them separately based on for example specific SLA requirements.

Well, this blog posting is not about explaining the (more...)

Find problems when you develop: using XRebel with Oracle ADF

Some days before ZeroTurnaround has released XRebel , a new tool to recognized problems in your web applications, when you make your developer test.

This was promising, so I give it a short try for Oracle ADF applications. For this blog I use the Summit ADF application, delivered by Oracle, but I have tried with our own application too. Test is done in JDeveloper 12.1.2.

After the download there are some easy steps (more...)

¿Archive log perdido? No reconstruya su Standby (al estilo 12c)

Se ha escrito hasta la saciedad (incluso yo) sobre cómo re-sincronizar una base de datos Standby en aquellos casos en los cuales la sincronización se suspendió y al tratar de reiniciarla nos topamos con que al menos un archivelog requerido ya no está disponible. En este artículo que he publicado en Toad World les explico lo simple que resulta resolver este problema cuando están usando Oracle Server 12c. ¡Que disfruten la lectura!

Conditional uniqueness

A quick fly through the options for conditional uniqueness.

Requirement #1: I want uniqueness on a column but only under certain conditions.

For example, I have an active flag and I want to make sure there is only one active record for a particular attribute but there can be many inactive rows.

Initial setup:

create table t1
(col1      number       not null
,col2      varchar2(24) not null
,is_active number(1)    not null
,constraint pk_t1 primary key (col1)
,constraint  (more...)

Move That Datafile!

Moving datafiles has always been a pain.  There are several steps, it’s fairly easy to make a mistake and it requires the datafile to be offline.  There are also different steps depending on whether the database is in ARCHIVELOG mode or not.  In ARCHIVELOG mode, the steps are…

1)      Take the tablespace containing the datafile offline
2)      Copy/rename the datafile at the OS layer

Oracle Enterprise Manager(12c Cloud Control) Release 4 Is Available Now….

Just a quick shout-out , in case you haven’t heard about the news before, Enterprise Manager is now available with its 4th release now. You can download it from OTN along with the documentation. Additionally, you can watch and learn about the latest features from the EM’s YouTube Channel and also from OLL’s YouTube Channel. Tim Hall’s installation articles for the same are just too good to be missed. Last but certainly not the least, (more...)

Slides for my german presentation “Quality Assurance for ADF projects” available

I have presented today on DOAG Development 2014 in Dusseldorf. For all non DOAG members – you can find the german presentation on slideshare too.


Filed under: Quality Assurances Tagged: 11g, 12c, acceptance test, ADF, Checkstyle, code coverage, commit test, Continous Integration, FindBugs, gui test, JaCoCo, JDeveloper, Jenkins, JUnit, Mockito, PMD, Powermock, Static Code Analysis, unit test