Franck's Oracle blog
Blog of Franck Pachot, Consultant at dbi services
I'm a Senior Consultant, and Oracle Technology Leader at dbi services (Switzerland).
Certified DBA (OCM 11g, OCP 12c, Performance Tuning Expert, Exadata Implementation) I cover all database areas: architecture, data modeling, database design, tuning, operation, and training.
My preferred area is troubleshooting oracle and performance tuning, especially when I acheive to enable an efficient collaboration between the developers and the
Besides this blog, I participate in the Oracle Community in forums, blogs, articles and presentation.
You can follow my activity on this blog: and my twitter account: Follow @FranckPachot
When you have sessions blocked on locks, you probably have all information about the waiters (they call you and anyway their waiting session is visible in v$session our ASH). But you usually need to get enough information that help to identify the blocker.
I'm quickly checking the planning for DOAG these 3 days and here is the list of sessions I would like to attend.
There are still a lot of interesting ones even if my choice is limited by the language (I would like to understand German but I'm limited so sessions in English). And I've still some concurrency issues to solve because I cannot be at two places at the same time.
SQL plan Directives have been introduced in 12c. If you have scripts that check their states (and I have that as I prefer to monitor closely the features that are new) you probably have seen a difference when going from 126.96.36.199 - the first release of 12c and the only one avilable yet in Standard Edition - and 188.8.131.52 - the first patchest. I'll explain here what are the SQL Plan Directive states and how they changed.
What is the most important part in an execution plan? It's probably the predicate section. It helps to see implicit conversions. It helps to understand why an index is used or not. Or to see additional predicates coming from constraints. When you get an execution plan from shared pool, the dbms_xplan.display_cursor() shows the predicates. But when you retrieve a plan from the past, dbms_xplan.display_awr() does not show them.
I've blogged about multitenant internals at the time when 184.108.40.206 was just released. Something has changed in 220.127.116.11 and blogging about it was in my todo list for a long time. Now the occasion to do it has been triggered by a question on Oracle Forums about CDB_DATA_FILES not showing PDB$SEED datafiles because there is an important change we must be aware of.
People often ask me if I use the SQL Tuning Advisor. The answer is no, at least not through the end of it. But don't take me wrong. SQL Tuning Advisor is a really nice feature. If you like the CBO then you must love the Tuning Advisor, because it is just the CBO with more time to optimize, and more ways to optimize. The fact is that when a customer calls me, they expect a bit more than running an advisor and implement the result. I'm there to fix the root cause, not just workaround some missing stats. And this is why I use it very rarely.
You are a speaker and like to show some demos. Which kind of demo do you do?
- you script everything so that you just have to press 'enter' during the demo
- you prepare everything in a text file and copy/paste during the demo
- you type everything in live?
Rumors are coming after OOW14. Oracle is working on a new SQL*Plus version. Not only a new version. It's a completely new development. Here is what we know currently about the future of sqlplus an sqldeveloper. But I start with some very old stuff.
A frequent scenario: you refresh test from production with a RMAN duplicate. Once the duplicate is done, you probably change dblinks so that they address the test environment instead of the production one. But are you sure that nobody will connect in between and risk to access production from the test environement? You want to disable all db links until you have finished your post-duplicate tasks.