12. 12. 2016.

How to trace execution of PL/SQL code for target application that uses connection pool

Here is a problem: I need to track all PL/SQL code that application of interest (Oracle Retail Price Management in this case) is executing, where I need to find out not only all anonymous code along with stored procedures/packages/functions that have been executed, but also the sequence of execution (time of execution). In this case, […]

10. 10. 2016.

Compound triggers performance and use cases

Let’s assume you have to track changes in stage table (in this case tstage table) and insert all inserted rows in trigger_test table. Once of your logical choices is to create a trigger (there are a couple of other options related to AQ/streams). Before 11g version, you can create before/after row trigger (where later is […]

25. 02. 2016.

PL/SQL vs Java for Data intensive tasks

This is the second part of my previous article, where I’ve compared PL/SQL with Java on CPU intensive tasks. I’ll use simple task of inserting values into the table with LOB columns, calculating the length of LOB, trim the LOB and re-calculate the length again. Although not realistic, test case is good enough to show […]

09. 02. 2016.

PL/SQL vs Java vs C vs Python for CPU intensive tasks – architectural decision

Main goal of this article is to show performance comparison mainly between PL/SQL and Java (running inside and outside of the Oracle Db), with included C and Python code just to be able to compare results. This may hopefully help you to decide where you are going to put Java CPU intensive code when you’ll […]