JOB_QUEUE_PROCESSES specifies the maximum number of job slaves per instance that can be created for the execution of DBMS_JOB jobs and Oracle Scheduler (DBMS_SCHEDULER) jobs.

Property Description

Parameter type


Default value




Modifiable in a PDB


Range of values

0 to 4000



Oracle RAC

Multiple instances can have different values.

DBMS_JOB and Oracle Scheduler share the same job coordinator and job slaves, and they are both controlled by the JOB_QUEUE_PROCESSES parameter.

If the value of JOB_QUEUE_PROCESSES is set to 0 in a non-CDB or in a CDB root, then DBMS_JOB jobs and Oracle Scheduler jobs will not run in the non-CDB or in the root.

If JOB_QUEUE_PROCESSES is set to a value in the range of 1 to 4000 in a non-CDB or in a CDB root, then DBMS_JOB jobs and Oracle Scheduler jobs will run. The actual number of job slaves created for Oracle Scheduler jobs is auto-tuned by the Scheduler depending on several factors, including available resources, Resource Manager settings, and currently running jobs. However, the combined total number of job slaves running DBMS_JOB jobs and Oracle Scheduler jobs on an instance can never exceed the value of JOB_QUEUE_PROCESSES for that instance.

In a multitenant container database (CDB) environment, JOB_QUEUE_PROCESSES in the CDB root indicates the absolute maximum number of total jobs allowed in the whole instance. In a PDB, the only valid values for JOB_QUEUE_PROCESSES are 0 and 4000, where 0 means that no jobs can be run in that PDB and 4000 means that jobs are allowed to run in that PDB..

Oracle Streams Advanced Queuing uses Oracle Scheduler for message propagation. Materialized views use Oracle Scheduler for automatic refreshes. Setting JOB_QUEUE_PROCESS to 0 will disable these features and any other features that use Oracle Scheduler or DBMS_JOB.


DBMS_JOB is deprecated in Oracle Database 12c Release 2 ( and may be removed in a future release. Oracle recommends that you use DBMS_SCHEDULER instead.

See Also: