[Oracle] Aurora module exception when compiling Java code on the DB

Sometimes it is possible to receive an exception when compiling Java code or running tools that generate Java code on the Oracle DB with this signature:

ORA-29516: Aurora assertion failure: Assertion failure at some_source:some_line_number

It is, sometimes, possible to prevent this error by disabling the JIT compilation on the DB:

alter session set java_jit_enabled = false;


Super neue jahr 2017

In the beautiful capital of the Eastern kingdom, a random group of travellers - powered by Couchsurfing™ - joins up to spend the best new years celebration ever. Impossible? Guck mal.

Click on the image to view the full album.

Infinite thanks to everyone for making it a special night, godspeed :)


Facebook and Airbnb login bug, now you are someone else

Well, everyone nowadays is running around trying to spot and fix bugs for money and I just stumble upon someone else's information for free.

This is an unexpected Christmas gift given it happened close to this huge fail from VISA, which makes it possible to guess full credit card details in a frighteningly fast amount of time. So read that article first, and then image what could someone do if they had all your personal info, including partial credit card data.


Eau de Cologne

Cologne: the only place where you can party hard and still smell good in the morning.

Click on the image to view the full album. Note: due to low quality phone camera, it's best not to blow the pictures up to 100%.

And bonus points because I finally received the recognition I deserve and my artwork is proudly exposed in the Ludwig museum:


[Oracle] Initialise DB statistics to improve performance

A couple days ago we were analysing a customer issue concerning DB performance on simple and already optimised queries (indexes + hints).

Somehow, the customer had bad performance even after calculating statistics for tables and indexes. Turns out that everything was good except for the fact that Oracle can't imagine future statistics without some help; if a table is only filled after some time that the applications run, it is important to gather statistics again after the first initialisation.

It is also possible however to provide fake statistics immediately after the objects are created or modified so that the DB already has an idea of how the objects will look like and choose different query execution plans than the ones it would use for freshly created objects.

That's what the DBMS_STATS package and its EXPORT__STATS and IMPORT__STATS procedures are for.