Wrong Results Involving INDEX FULL SCAN (MIN/MAX) in 12.1.0.2
One of my customers that recently upgraded to 12c hit a bug (22913528) that I think is good to be aware of. Note that as the title of this post states, the problem only occur in 12.1.0.2. At least, I...
View ArticleAd: The Method R Guide to MASTERING ORACLE TRACE DATA
The second edition of Cary Millsap‘s MASTERING ORACLE TRACE DATA (MOTD) is finally available. You can order it through amazon.com. I had the pleasure not only to review MOTD while Cary was working on...
View ArticleWhen CURSOR_SHARING=FORCE, Does Literal Replacement Always Take Place?
The concept of cursor sharing is simple. If an application executes SQL statements containing literals and if cursor sharing is enabled (i.e. CURSOR_SHARING=FORCE), the database engine automatically...
View ArticleStatement-level PARALLEL Hint
From version 11.2 onward, the PARALLEL hint supports two syntaxes: object-level and statement-level. The object-level syntax, which is the only one available up to version 11.1, overrides the DOP...
View ArticleSQL Trace in Oracle Database Exadata Express Cloud Service
Today I started having a look to the Oracle Database Exadata Express Cloud Service announced last week at Oracle OpenWorld. Note that since the amount of resources provided (in summary, 1 OCPU, 20 or...
View ArticleAdaptive Query Optimization Configuration: Parameters, Preferences and Fix...
The aim of this post is to summarize the knowledge about the 12.1 and 12.2 adaptive query optimizer configuration that, as far as I know, is spread over a number of (too many) different sources. First...
View ArticleTrace Files Split in Multiple Parts
Last January, in the following tweet, I pointed out that the documentation vaguely mentions that a trace file may be split into several files. Did you successfully tested the new MAX_DUMP_FILE_SIZE...
View ArticleWhat’s the Difference between Row Migration and Row Chaining?
In Oracle Database migrated and chained rows are often confused. In my opinion, this is for two main reasons. First, they share some characteristics, so it’s easy to confuse them. Second, Oracle, in...
View ArticleApproximate Aggregate Transformation (AAT)
There are situations where approximate results are superior than exact results. Typically, this is the case when two conditions are met. First, when the time and/or resources needed to produce exact...
View ArticleInitialization Parameters Set at the PDB Level Are Not Always Honored
Before describing the issue that lead to this post, let’s shortly review how the handling of initialization parameters works in a multitenant environment. Initialization parameters exist at both the...
View ArticleAd – Oracle Database 12c Release 1 and 2: New Performance Features
In the past I gave a number of 1-day seminars about the new performance features available in Oracle Database 12c Release 1. On the 22nd of February, for the first time, I’ll give an updated version of...
View ArticleAdaptive Query Optimization: Backport of 12.2 Configuration in 12.1.0.2
I finally managed to install and test patch 22652097 (PROVIDE SEPARATE CONTROLS FOR ADAPTIVE PLANS AND ADAPTIVE STATISTICS FEATURES). Actually, I installed and tested two patches. The first was...
View ArticleScripts to Download Oracle Database 12c Release 2 Documentation
In the past (here, here and here) I already shared with you the scripts I use to download the Oracle Database documentation. The aim of this short post is to reference the scripts I just wrote for the...
View ArticleTVD$XTAT 4.0 Beta 11
This is just a short note to point out that I finally uploaded under the downloadable files of TOP a new version of TVD$XTAT. To download it click here. Not only I introduced some new features, but I...
View ArticleAnnouncing Trivadis Performance Days 2017
It is a great pleasure to announce the next Performance Days! This year the event will take place the 13-14 September in Zurich. Given that detailed information about the event as well as online...
View ArticleOffline Analysis of ASH Data with ASHDUMP
From time to time, it happens to me to carry out offline analyses of ASH data. For that, I mean to analyze the ASH data without having access to the database instance that generated it. For that...
View ArticleActivating and Deactivating Performance Feedback
Performance feedback is one of the adaptive query optimizer features introduced in Oracle Database 12c. The aim of this short post isn’t to explain how it works, but to simply warn you about a buggy...
View ArticleThe APPROX_MEDIAN Function – A Test Case
The aim of this post is not to explain how the APPROX_MEDIAN function works (you find basic information in the documentation) but to show you the results of a test case I ran to assess how well it...
View ArticleSPD State Does Not Change If Adaptive Statistics Are Disabled
The aim of this post is to point out an issue (bug?) that I recently discovered. But, before talking about it, I need to go through a rather long introduction about the state of SQL plan directive...
View ArticleSQL_ADAPTIVE_PLAN_RESOLVED Is Broken
You can use the V$SQL.IS_RESOLVED_ADAPTIVE_PLAN column to know whether the execution plan associated to a child cursor is adaptive or not. Specifically, to know whether the query optimizer selected...
View Article