System Stats
A quick collation – and warning – for 11.2MOS (Metalink): Bug 9842771- Wrong SREADTIM and MREADTIM statistics in AUX_STATS$ [ID 9842771.8] (needs MOS account)Comment fromSokrates in aCharles Hooper...
View ArticleUpgrade Argh
Time for another of those little surprises that catch you out after the upgrade. Take a look at this “Top N” from a standard AWR report, from an instance running 11.2.0.2 Top 5 Timed Foreground Events...
View ArticleSubquery Factoring
When I wrote a note last week about the fixes to the subquery factoringoptimizer code in 11.2.0.3, I finished with a comment about having more to say on the test case if I materialized the subquery....
View ArticleIndex Upgrades
Listening to a presentation by Paul Matuszyk on extended statistics yesterday, I learned something that I should have spotted ages ago. Here’s a little demo script to introduce the point: create table...
View ArticleACS
You’ve probably heard about adaptive cursor sharing, and possibly you’ve wondered why you haven’t seen it happening very often on your production systems (assuming you’re running a modern version of...
View ArticleSTS, OFE and SPM
That’s SQL Tuning Sets, optimizer_features_enable, and SQL Plan Management.There’s a recent post on OTN describing an issue when using SQL Tuning Sets to enforce plan stability when upgrading from...
View ArticleHash Clusters – 3
This note is a quick summary of an oddity that came to light after a twitter conversation with Christian Antognini yesterday. First a little test script to get things going:read more
View ArticleUpgrades to 11g are finally complete
Just a little slice of reality to cut through all the 12c stuff that is floating around at the moment. I’ve just moved the last of our databases to 11g. Yay! As well as upgrading, we’ve been culling or...
View ArticleSubquery Anomaly
Here’s an oddity that appeared on the OTN database forum last night:We have this query in our application which works fine in 9i but fails in 11gR2 (on Exadata) giving an “ORA-00937: not a single-group...
View ArticleNVL() change
One of the problems of functions is that the optimizer generally doesn’t have any idea on how a predicate based on function(col) might affect the cardinality. However, the optimizer group are...
View ArticleNVL() change
One of the problems of functions is that the optimizer generally doesn’t have any idea on how a predicate based on function(col) might affect the cardinality. However, the optimizer group are...
View ArticleMySQL Upgrades
I read Wim Coekaerts post about the MySQL 5.6.20-4 this morning. I logged on to my server and did the following command as root.# yum update -yThat’ll be the upgrade done then… If you are using MySQL...
View ArticleUpgrades
One of the worst problems with upgrades is that things sometimes stop working. A particular nuisance is the execution plan that suddenly stops appearing, to be replaced by an alternative plan that is...
View ArticleUpgrades
I have a simple script that creates two identical tables , collects stats (with no histograms) on the pair of them, then executes a join. Here’s the SQL to create the first table:read more
View ArticleClosure
It’s been a long time since I said anything interesting about transitive closure in Oracle, the mechanism by which Oracle can infer that if a = b and b = c then a = c but only (in Oracle’s case) if one...
View ArticleUpgrades
One of the questions that came up at the Optimizer Round Table this year was about minimizing the performance-related** hassle of upgrading from 11g to 12c. Dealing with changes in the optimizer is...
View ArticleHinting
A posting on the OTN database forum a few days ago demonstrated an important problem with hinting – especially (though it didn’t come up in the thread) in the face of upgrades. A simple query needed a...
View ArticleAccelerating Oracle E-Business Suites upgrades
Taking backups during development, testing, or upgradesThe process of upgrading an Oracle E-Business Suites (EBS) system is one requiring dozens or hundreds of steps. Think of it like rock climbing....
View ArticleUniquely parallel
Here’s a surprising (to me) execution plan from 12.1.0.2 – parallel execution to find one row in a table using a unique scan of a unique index – produced by running the following script (data creation...
View ArticleBand Join 12c
One of the optimizer enhancements that appeared in 12.2 for SQL is the “band join”. that makes certain types of merge join much more efficient. Consider the following query (I’ll supply the SQL to...
View Article