Recent Posts

Oracle Wallets vs Security

May 30, 2020 ❖ Tags: oracle, wallets

I had posted several years ago about about the virtues of using Oracle Wallets, but didn't really address the dangers. There is a false sense of security when you can't readily view the contents of a file, so this post is to clarify the purpose of wallets and their use, but also what they shouldn't be used for.

read more 💩

latch: ges resource hash list after an 18c upgrade

April 19, 2020 ❖ Tags: oracle, bugs

Some 18c woes

read more 💩

And I'm Back

March 31, 2020 ❖ Tags: nologs

Every few years I forget to check my emails or think that my web host is just spamming me so their pleas for money go ignored. Who knows how long this thing has been shutdown since I don't get much traffic and sure don't update it much. I've got several entries that have been stuck in draft mode so I'm going to push them through and try to get into some kind of groove.

read more 💩

ORA-13831: SQL profile or patch name specified is invalid

February 29, 2020 ❖ Tags: oracle, bugs

Recently upgraded to 18.5 on a 200+ TB databases and ran across an odd error that we'd not run across in TEST:

read more 💩

Soft Launch of the New Site

September 25, 2019 ❖ Tags: nologs

Lots has happened since I last posted anything to this website. I moved to a new state. I've left nearly all social media. (I didn't delete my Twitter and Linkedin accounts, but check them mounthly as opposed to daily). I've left most closed cloud platforms, Dropbox, Evernote, Google, etc. Though I'm still in the process of switching away from Gmail and Github. Some things just take time.

read more 💩

Subquery Function Bug

November 17, 2017 ❖ Tags: oracle, bugs

I wasn't really sure about the usefulness of Subquery Functions until I had to work in an environment where I had SELECT but no EXECUTE. This was difficult to troubleshoot complex SQL which did things like call PL/SQL functions and TABLE type casts. That's when I saw the light. However, it didn't take me long to hit ORA-1008s.

read more 💩

Upgrade Stability (Part 4 The Final Countdown)

September 11, 2016 ❖ Tags: oracle, performance, baselines, upgrade

In the last three posts we covered creating SQL Tuning Sets, diagnosing regressed SQL, creating SQL Plan Baselines, and verifying that the baselines have taken effect. Now it’s just a matter of upgrading your production database.

read more 💩

Upgrade Stability (Part 3 Now We Test)

September 09, 2016 ❖ Tags: oracle, performance, baselines, upgrade

In the previous post I showed how to create SQL Tuning Sets (STS) by capturing SQL statements from AWR and the cursor cache. Once the STS exist they can be used to create SQL Plan Baselines. Ideally, you would export these and load them into a database that you are going to be testing your upgrades. Again, my scripts are based on the thorough work that Carlos has provided.

read more 💩

Upgrade Stability (Part 2 Electric Boogaloo)

September 07, 2016 ❖ Tags: oracle, performance, baselines, upgrade

In the previous post, I described the method we used to mitigate the performance risks associated with upgrading from 11.2.0.3 to 12.1. The plan was to capture SQL cursors in AWR and the cursor caches of each of our RAC instances in SQL Tuning Sets.

read more 💩

Upgrade Stability (Part 1)

September 05, 2016 ❖ Tags: oracle, performance, baselines, upgrade

We recently upgraded some databases to 12c. They were big, RAC’d, and due to their exposure to the world, were extremely performance sensitive. I’ve found that no matter how much you test and test and test and test there will always be some SQL that the CBO will just decide to do it’s own thing. This is especially true when you move to any new release. So, being able to quickly diagnose and react to regressed SQL is critical to a successful upgrade strategy.

read more 💩