Category: Oracle

Poor man’s parallel DML

We were recently required to get rid of 250 million rows in a partitioned audit table. While the table is partitioned, we have global indexes that would be rendered unusable after dropping or truncating a partition. The UPDATE GLOBAL INDEXES…

More fun with SQL_BIND_CAPTURE

We had a query that was running slow during a performance test, but extremely fast with my laptop based threaded java test. The SQL was exactly the same, so I was driven bonkers by why it wasn’t using an index.…

dbms_sqltune using AWR data

Today I wanted to use dbms_sqltune on a SQL statement that was run on Friday, but had not been executed since then. dbms_sqltune by default will assume the statement is still in the shared pool. If it is not, you…

Python based stress tester

I often find myself building something in anticipation of needing it at some point.  This is one of those cases 🙂  Below is a template (a real working one for my needs) that you can edit to build a simple…

Compressing and Decompressing XMLTYPE’s

We are testing with compression of our XMLTYPE data. We are initially testing with the following… create or replace package compression_utils is function comp_data(p_data in xmltype) return blob; function decomp_data(p_data in blob) return xmltype; end; / create or replace package…