ORA-27476: "SYS.MY_FANCY_JOB_CLASS" does not exist

Always check out the original article at http://www.oraclequirks.com for latest comments, fixes and updates. Ever exported a whole schema containing DBMS_SCHEDULER jobs with non-default job classes? Chances are that you hit the following error message when you attempt to import the dump later on.   ORA-39083: Object type PROCOBJ failed to create with error: ORA-27476: "SYS.MY_FANCY_JOB_CLASS"

Glorious mysteries of Oracle’s web site

God or Larry knows why Oracle feels the compelling need of changing some of its page links over time. Oracle Application Express' main page URL is now: http://www.oracle.com/technetwork/developer-tools/apex/index.html It was: http://www.oracle.com/technology/products/database/application_express/index.html May be I am a bit slow in picking up these changes, I don't really know if this

Definition von AWR Intervallen

Doug Burns hat dieser Tage in seinem Blog zwei Artikel zum Thema der Definition von AWR Intervallen veröffentlicht. Erinnerungswürdig scheinen mir dabei vor allem die folgenden beiden Punkte:

  • in einem produktiven System ist es sinnvoll, die Retention der AWR Snapshots auf einen deutlich höheren Wert als den default von 8 Tagen zu setzen (35-42 Tage oder gleich: unbegrenzt). 
  • weniger sinnvoll ist es, die AWR Intervalle selbst zu verkürzen: also vom Standard-Intervall von 1h auf (more...)

Are Web Service a Mistake?

Quick, how many different Web Service specifications are there?

  1. less than 20
  2. between 20 and 40
  3. more than 40

I was in doubt whether the answer would be 1) or 2) – after all, there is a lot of WS-* stuff. Turns out the answer is 3) – there are currently 50 web service specifications.

A technology with 50 specifications is unlearnable. The basics of web services is simple and useful, but the IT industry (more...)


Eigentlich stand auf meinem Erledigungszettel die Idee, eine kurze Untersuchung der in neu eingeführten APPROX_COUNT_DISTINCT Funktion durchzuführen, mit deren Hilfe man die ungefähre Anzahl der distinkter Werte in einer Spalte effizient ermitteln können soll - aber Luca Canali hat gerade einen entsprechenden Artikel veröffentlicht und so genau wie der Herr Canali hätte ich mir den Fall ohnehin nicht angeschaut. Hingewiesen wird im Artikel unter anderem auf folgende Punkte:

ALTER INDEX … COMPUTE STATISTICS ist wirklich deprecated…

Im OTN-Forum wurde dieser Tage die Frage gestellt, ob nach einem Index-Aufbau ein expliziter Neuaufbau von Statistiken erforderlich ist. In einem Kommentar erwähnte ein Diskussionsteilnehmer sein Standardverfahren des Aufrufs von ALTER INDEX ... COMPUTE STATISTICS nach dem Index-Aufbau. Nun hatte ich eine relativ klare Vorstellung von den Unterschieden bei der Statistikerstellung unter Verwendung des (veralteten) ANALYZE-Kommandos (für Tabellen) und dem (aktuellen) Aufruf von DBMS_STATS.GATHER_TABLE - aber keine Ahnung, wie die Statistiken aussehen, die durch ALTER (more...)

So you want to be a Presenter? Abstract selections for 2015 are open!

You say you want to present and share your knowledge with the world (or at least your little corner of the world)… Your boss says there is no $$$ to pay for any technical conferences… You want to be a rock star and have adoring fans “LIKE” your blog or web site… Have I got […]

Learning It All

I was recently advising a transition project where a customer was switching support and maintenance supplier. This means that one organization must take over a system that has been maintained by another organization for a number of years.

A lot of information is lost in these transitions because knowledge of the problem domain has been accumulated in the heads of developers over many years. This loss cannot realistically be mitigated.

But sometimes, specific information about (more...)

Avoid UTL_FILE_DIR Security Weakness – Use Oracle Directories Instead


The UTL_FILE database package is used to read from and write to operating system directories and files. By default, PUBLIC is granted execute permission on UTL_FILE. Therefore, any database account may read from and write to files in the directories specified in the UTL_FILE_DIR database initialization parameter [...] Security considerations with UTL_FILE can be mitigated by removing all directories from UTL_FILE_DIR and using the Directory functionality instead.

© Eddie Awad's Blog, (more...)

The Art and Science of Estimates

I’m currently estimating the effort for a piece of software. With 20 years of experience under my belt, I don’t find estimating hard any longer. But back when I started out, I was terrified whenever I was asked to provide an estimate.

In most organizations, too much of the estimating is art and too little is science. Experienced developers can produce good, realistic estimates, but these are often treated as individual efforts and no organizational (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...)

Are You Using BULK COLLECT and FORALL for Bulk Processing Yet?

Steven Feuerstein was dismayed when he found in a PL/SQL procedure a cursor FOR loop that contained an INSERT and an UPDATE statements.

That is a classic anti-pattern, a general pattern of coding that should be avoided. It should be avoided because the inserts and updates are changing the tables on a row-by-row basis, which maximizes the number of context switches (between SQL and PL/SQL) and consequently greatly slows the performance of the code. Fortunately, (more...)

“The Dirty Dozen – ADF Migration to 12c in the IKB” I’m a speaker at DOAG2014:


Today the official program is online for DOAG conference 2014 in Nuremberg. My presentation is confirmed  “The Dirty Dozen – ADF Migration to 12c in the IKB”.

I will speak over our experiences with following

  • provide user software
  • install servers
  • iterative test migrations
  • migration plannig
  • real migration
  • and the problems and pitfall’s we find on our way

If you speak german and you are interested in some of this, you should come and attend my (more...)

Oracle Forms Migration Survey: Oracle Forms to APEX / Oracle Forms to .Net / Oracle Forms to ADF / Oracle Forms to Mobile ?

This year at the Kscope conference we started hearing more and more customers saying they were migrating away from Oracle Forms. Many had not started planning or even thought about what such a project entails but the declarations were loud and clear: “We are migrating our Forms system to ______<plug in development tool of choice… ADF…Java…HTML…Net>”.  It was as if they were following some trend of what they thought they were supposed to be saying but no one (more...)

SQL Server ETL mit T-SQL oder SSIS

Es ist schon eine Weile her, dass ich ernsthaft mit dem SQL Server gearbeitet habe - und ich bin mir nicht sicher, ob ich ernsthaft behaupten würde, je ernsthaft mit den SQL Server Integration Services (SSIS) gearbeitet zu haben. An Projekten, in denen SSIS eingesetzt wurde, war ich allerdings beteiligt, habe aber immer dafür plädiert, die SSIS in diesem Zusammenhang nur als Container für SQL-Operationen zu verwenden - ganz im Sinne eines älteren Artikels von (more...)

Case sensitivities and making JavaScript more like PL/SQL

Yesterday the Anti-Kyte (a.k.a. Mike) published a great post on coding styles. I started to post a comment but ended up rambling to I thought I'd put my thoughts here.

I can't be one to comment on tangential intros (just look at any of my presentations), but he almost lost me when I thought the entire post was going to be soccer jokes I didn't get but switched in time to three controversial (more...)

Book Review: The Lean Startup by Eric Ries

The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful BusinessesThe Lean Startup: How Today’s Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses by Eric Ries

My rating: 4 of 5 stars

This main point of this book is the principle of “failing fast.” Since you don’t know everything (and a startup knows very little), it is most efficient to quickly create some data to base decisions on.

The distinction between “vanity metrics” and real, useful metrics is illuminating. A “vanity metric” shows (more...)

Visualisierung von Oracle-Performance Informationen

Als hoffnungsloser Laie in Sachen Visualisierung schaue ich immer wieder voller Erstaunen auf die Beispiele, die Kyle Hailey in seinem Blog unterbringt. Ich muss mal wieder neidvoll anerkennen: es gibt Fälle, in denen sqlplus nicht die optimale Repräsentation von Ergebnissen liefert.

Arguing Facts and Fiction

I’ve been following the discussion on the new In-Memory option in the Oracle database. As far as I can see, it’s very easy for a developer to start using this feature, which will cost your company $23,000 per CPU at the next Oracle license audit.

But the most interesting part is actually not the cost – it’s the discussion. Oracle expert Kevin Closson stated that there was a problem (more...)

auto-generate SQLAlchemy models

PyOhio gave my lightning talk on ddlgenerator a warm reception, and Brandon Lorenz got me thinking, and PyOhio sprints filled my with py-drenaline, and now ddlgenerator can inspect your data and spit out SQLAlchemy model definitions for you:

$ cat merovingians.yaml
name: Clovis I
from: 486
to: 511
name: Childebert I
from: 511
to: 558
$ ddlgenerator --inserts sqlalchemy merovingians.yaml

from sqlalchemy import create_engine, Column, Integer, Table, Unicode
engine (more...)