Who's online

There are currently 0 users and 27 guests online.

Recent comments


Open Source is Free – Free like a puppy!

I’m at the ODTUG Kscope conference in Hollywood Florida and was just talking with some Oracle folks about Open Source (yes, Oracle has people devoted to working with Open Source tools) and I shared with them my general comments to students and colleagues about Open Source.

There are two kinds of free:

1. Here’s a free cup of coffee (or beer or soda…)

2. Here’s a free puppy

When accepting option 1 (free coffee) you take it, consume it, and enjoy.

When accepting option 2 (free puppy) you take it, you find a place for it to sleep, you take it to the vet, you walk the puppy, you feed the puppy, and oh-yeah — every once in a while the puppy might make a mess on your floor! You’ve made a commitment.
(I cannot take credit for the metaphor; I first heard it used by friend and colleague Jim Cody of Cardinal Directions – thanks Jim!)

Clearly, “free” is not always “completely free”

Oracle 12c – PL/SQL Implicit Result Sets

Implicit Result Sets

Beginning with Oracle 12c it is possible for SELECT statements to send results back to a client from PL/SQL without need for REF CURSOR definitions. Previously, PL/SQL required definition of a REF CURSOR as an OUT parameter adding complexity (and precision) not found in other products (argh… the older I get the more I believe that a module should do exactly one thing (and do it well)). However, it is common in some database products to use a Stored Procedure to return multiple result sets.

Using Oracle 12c’s newly implemented implicit result sets will allow reuse of SQL Server (and other database) stored procedures that return implicit result sets. Implicit result sets were originally targeted at JDBC clients but will probably work well in other environments like C#.NET or SQL Server TSQL.

Mobile Front and Center at Oracle Open World 2014

Wow! Sorry I have not posted anything since Oracle Open World. Lot’s of great new stuff is coming from Oracle that you should look into including some pretty cool stuff for mobile development.

Java 8 Released

Java 8 released! Download it here... Oracle continues to beat Sun’s track record for actually updating Java on a regular basis. Java 8 brings many exciting new features and many miscellaneous improvements including:
• Java tippy-toes into the world of “Functional” programming with the addition of Lambda expressions; not quite a “Closure” but Lambdas allow the definition of stand-alone methods tied to the java.util.Function interface; functional methods are perfect for one-time code needs
• Annotations may be used anywhere a Type is used; not just at Type declaration
• New java.util.Stream API allows functional style operations on streams of elements in collections providing the ability to perform bulk operations such as map-reduce
• HashMap improvements
• Compact profiles to allow Java to function in low-resource environments


I have a permanent job at the NetCracker‘s System Performance group. Recently I was offered to do one day job outside, on-site in another company, which coincidentally has an office close to NetCracker’s Moscow office. It was an opportunity to apply my skills in a completely different situation which I couldn’t miss; plus I’ve never done public presentations before and this was a good occasion to practice that. Here I’d like to write down some notes how the event went.

DST in Russia

Daylight Saving Time in Russia has been changed last year. Oracle published a FAQ on the support site about this: Russia abandons DST in 2011 – Impact on Oracle RDBMS [ID 1335999.1].

Debugging PL/SQL and Java Stored Procedures with JPDA

In 2003 I published a paper entitled Debugging PL/SQL and Java Stored Procedures with JPDA. Its aim was to describe how to debug PL/SQL and Java code deployed into the database with JDeveloper 9i. Two weeks ago a reader of my blog, Pradip Kumar Pathy, contacted me because he tried, without success, to do something similar with JDeveloper 11g, WebLogic 11g and Oracle Database 11g. Unfortunately I was not able to help him. The reason is quite simple, since 2004 I’m an Eclipse user…

Few days later Pradip contacted me again to let me know that, at last, he succeeded. Here you find his notes…

  1. Grant the required privileges
  2. GRANT DEBUG CONNECT SESSION to &&schema_name;

ODTUG KScope 11 is coming, YIPPEE!

I’m looking forward to ODTUG KScope 11 in Long Beach next month! KScope 11 (used to be called “Kaleidoscope”) is the only Oracle conference devoted to developers. That’s right, it’s aimed square at you and me; the people who write code that makes systems work. Yes, we get Applications “Functional” people and DBAs, but the focus is on getting the job done. KScope has whole tracks for ADF and Fusion Middleware, APEX, database development with SQL & PL/SQL, MySQL, and Hyperion/Essbase. KScope 11 has sessions for .NET developers, Java developers, and people using LAMP tools too; check it out at You might know that I’m on the ODTUG (Oracle Development Tools User Group) Board of Directors ( You might not know that I’ve been attending ODTUG since it was the “CASE SIG” at IOUW many years ago. I started attending because the people who speak at the conference are the leading lights in the development community.


Starting with Oracle 11gR1 Oracle JVM includes Just-in-Time compiler. Its goal is to convert JVM bytecode into platform-specific native code based on the performance data gathered in run-time. It is stated in the documentation that JIT “enables much faster execution” – and this is, in general, true. There are ways to control the behavior of JIT, one way is described in the MOS Doc ID 1309858.1, and another one here.