maandag 21 februari 2022

“Ignoring Hints” Catalogue

Via Oracle Scratchpad by Jonathan Lewis

blank.jpg

This is a list of all articles I've written to examine claims that Oracle has "ignored a hint", including articles where other aspects of hinting (such as SQL Plan Baslines) don't work as expected.

Each entry has a date stamp and a short note of the contents. Some of these will also appear in the generic "Hints" catalogue. The articles are generally listed most-recent first.

  • Use_nl() revisited (Oct 2021) – a detailed examination of how a simple hint has been used by the optimizer but still produce a plan that appears to have ignored it.
  • Index hints – pt. 1 (Jan 2021) – a voyage of discovery as index hints don't do exactly what you expect.
  • Index hints – pt. 2 (Jan 2021) – continuing the voyage of discovery with index skip scans and range scans.
  • Hinting errors (Jan 2021) – there are many reasons why your hints might be wrong; this is a list (probably incomplete) of possible reasons that I extracted from the Oracle executable.
  • Faking Baselines (Feb 2020) – an example of an SQL Plan Baseline that doesn't reproduce the plan it's supposed to.
  • Ignoring hints by choice (June 2019) – changes to the "_optimizer_ignore_hints" (previously hidden) parameter in 18g onwards. It's official, and has a companion.
  • Avoiding APPEND (March 2019) – ideas for making Oracle ignore an APPEND hint in a 3rd party application.
  • Parallelism (May 2017) – the parallel(N) hint does not mean "make this query run parallel with degree N".
  • What does use_nl(a,b) mean (Jan 2017) – a common misconception explained; this hint does not mean "do a nested loop from a to b".
  • Hinting across upgrades (March 2016) – updates can introduce new transformations that make your previously working set of hints for a query incomplete: an example.
  • Ignore this hint – please (May 2014) – Oracle doesn't "ignore" hints, but sometimes you might wish it did.

New article matched for in your Blogger! rule

Testing Wide Production 2020