Skip to Main Content
  • Questions
  • Question about Concurrent Statistics Gathering and Maintenance Windows

Breadcrumb

Question and Answer

Connor McDonald

Thanks for the question, Bennaceur.

Asked: March 09, 2026 - 5:55 pm UTC

Last updated: March 10, 2026 - 3:51 am UTC

Version: 19c update 22

You Asked

Hello,

I have a question regarding concurrent statistics gathering in Oracle 19c. Currently, my global preference is set to OFF:

SELECT DBMS_STATS.GET_PREFS('CONCURRENT') FROM DUAL;
-- Result: OFF

I can enable it manually with:

BEGIN
DBMS_STATS.SET_GLOBAL_PREFS('CONCURRENT','ALL');
END;
/

I understand that enabling CONCURRENT allows Oracle to gather statistics on multiple tables and (sub)partitions at the same time, potentially reducing the total duration. Oracle uses the Job Scheduler and Advanced Queuing to manage these concurrent jobs.

My question:
Is there a relationship between the maintenance windows (like WEEKEND_WINDOW or WEEKNIGHT_WINDOW) and concurrent statistics gathering? Specifically:

When CONCURRENT is enabled, does Oracle automatically schedule these parallel stats jobs within the maintenance windows?

Or is the maintenance window unrelated, and the concurrent gathering runs independently of it?

Thank you for your guidance.

and Connor said...

Maintenance windows are still respected (assuming you are using the standard auto-task infrastructure to launch your optimizer jobs). Of course, if you manually launched (say) a schema gather, then it would be run right there and then.

So all the normal rules apply in terms of start/stop timings - it just means you'll be launching multiple sessions (jobs) to gather stats during the window.

An excellent post on this here

https://blogs.oracle.com/optimizer/how-to-gather-optimizer-statistics-fast

More to Explore

Performance

Get all the information about database performance in the Database Performance guide.