Oracle 12c Result Cache feature can cause higher than normal CPU usage in database server

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

In Oracle 12c a new feature was introduced to the database called "Result Cache Dynamic Sampling", enabled by default. If the shared pool resources are maxed out, the dynamic sampling SQL, originated by Oracle will go into an "Invalid" state, resulting in higher CPU consumption by the Oracle database.

Confluence does not use this cache, thus it is safe to disable the feature by setting the _optimizer_ads_use_result_cache option to "false" on the Oracle 12c database. This is a stability measure to reduce potential CPU burden on the database server.

ℹ️How are dynamic sampling results managed for SQL plan directives?

Updated on April 8, 2025

Still need help?

The Atlassian Community is here for you.