Author: Jure Bratina

After logon trigger in user schema and FRA full situation hang the database

This blog post is about a scenario where a combination of a logon trigger performing DML operations at user login time (writing to a custom audit table), and a Fast recovery area (FRA) full situation brings the database to a…

Read More >

Database Upgrade Fails With “unexpected error in validate_credentials”

unexpected error

This is a blog post about an issue that can occur during a database upgrade and produces a misleading error message. If you’re already aware of it, the workaround is trivial. However, when it happened to me during the testing…

Read More >

Statspack vs. AWR: Wrong number of SQL Executions


This post is about a Statspack anomaly I discovered while analyzing execution trends of a particular SQL on one of our clients’ databases. I decided to share it, since its appearance can be misleading. The database in question was an…

Read More >

DML by Unique Index Supposedly Affecting Many Rows

This blog post is based on a real customer case, and illustrates how v$sql reports execution statistics for certain DML types of operations (I purposely have not named which DML types … yet). These reports can be misleading when troubleshooting…

Read More >

Issues With Database Service Names Starting With Pluggable Database (PDB) Name

In this post I’ll describe a problem which occurs when creating and using a database service name which starts with the pluggable database’s (PDB) name, and has a dot (“.”) after it: “<pdb_name>.<optional_suffix>.” I noticed this issue when I was…

Read More >

Query Statspack’s “SQL ordered by” Sections Over a Time Period

In this post, I’ll present the statspack_top_sqls.sql script, which returns SQL performance statistics by mining the Statspack repository. In a previous blog post, I presented the statspack_load_trends.sql and the AWR_load_trends.sql scripts, which provide a high-level overview of workload dynamics on…

Read More >

Mining Statspack and AWR Repositories for Historical Trends

There are various ways that we can approach the analysis of a past database performance problem. The initial steps usually differ based on their scope. Is it limited to a certain SQL/process/task, or is it perceived as a database-wide slowdown?…

Read More >