Posts in category TOP

Troubleshooting Oracle Performance, 2nd Edition – Downloadable Files

This is just a short post to point out that the downloadable files are available here. You can download either a ZIP or a TAR file containing all files, or single files. Since every file has its own URL, you can also directly executed them in SQL*Plus. For example: SQL> @http://antognini.ch/downloads/top2/chapter02/selectivity.sql I’m sorry for the […]

Differences between the First and the Second Edition of Troubleshooting Oracle Performance

Several people asked me how much I changed in the second edition. The short answer is… A LOT. The main goals set for the revision of the book were the following: Add content about Oracle Database 11g Release 2 and Oracle Database 12c Release 1. Remove content about Oracle9i and Oracle Database 10g Release 1. […]

Troubleshooting Oracle Performance, 2nd Edition

Few days ago the second edition of Troubleshooting Oracle Performance was finally published. Today, I updated the pages on this site that provide information about the book. It goes without saying that the new pages cover the second edition. Hence, from here you can access the description, the table of contents, the forewords written by […]

Premature Optimization

Premature optimization, (probably) because of Donald Knuth’s famous line “premature optimization is the root of all evil,” (see Structured Programming with go to Statements) is, at the very least, a controversial topic. The misconception based on that particular quote is that a programmer, while writing code, should ignore optimization altogether. In my opinion this is […]

Index Scan with Filter Predicate Based on a Subquery

Most execution plans can be interpreted by following few basic rules (in TOP, Chapter 6, I provide such a list of rules). Nevertheless, there are some special cases. One of them is when an index scan, in addition to the access predicate, has a filter predicate applying a subquery. The following execution plan, taken from […]

Ad: The Oracle Query Optimizer 2-Day Seminar

The 31st of January and 1st of February 2012 I will present a 2-day seminar about the Oracle query optimizer in Ballerup (DK). The event is organized by Miracle A/S. The content, which is based on the chapters 2, 4, 5, 6, 9 and 10 of my book, is the following: Chapter 1 describes the […]

optimizer_secure_view_merging and VPD

At page 189 of TOP I wrote the following piece of text: In summary, with the initialization parameter optimizer_secure_view_merging set to TRUE, the query optimizer checks whether view merging could lead to security issues. If this is the case, no view merging will be performed, and performance could be suboptimal as a result. For this […]

Ad: DOAG Berliner Expertenseminare (Last Call)

I was just informed that there are still some free seats for the 2-day seminar I will present in Berlin in two weeks (June 7-8). Hence, do not wait too long if you want to join us… The content is based on the chapters 4, 5, 6 and 7 of my book, i.e. part 3: […]

IS NULL Conditions and B-tree Indexes

At page 383 of my book I wrote the following sentence (BTW, the same information is also provided by Table 9-3 at page 381): With B-tree indexes, IS NULL conditions can be applied only through composite B-tree indexes when several SQL conditions are applied and at least one of them is not based on IS […]

SIOUG Conference in Portoroz

This is a short note to point out that I just added to the Public Appearances page the next conference organized by the Slovenian Oracle User Group (SIOUG) in Portoroz. It will take place on September 27-29. My talk, entitled “Join Techniques”, is based on chapter 10 of my book. It will be a shorter […]