Details
-
Feature
-
Status: Released (View Workflow)
-
Major
-
Resolution: Fixed
-
2.0.0
-
None
Description
Current Situation
- Users can limit the number of parallel processes by use of Resource Locks that can include any number of Job Instructions and other instructions.
Desired Behavior
- Users would like to limit the number of parallel processes for jobs at Agent level.
- Processes include execution of Shell Jobs.
- The Process Limit is applied to JVM Jobs (Java, JavaScript, JITL) too. Such jobs are not consuming an OS process, however execution should be limited by the same setting.
- The process limit applies to use of individual Job Instructions.
- Limit
- If the limit of parallel jobs is exceeded then any further job starts are delayed until a process becomes available within the given limit.
- In this situation orders are put to the WAITING state with the status information WAITING_FOR_PROCESS.
- If the number of parallel processes falls below the process limit specified then the next job can start. The next job is the first job that previously was delayed when the process limit was hit.
- Scope
- For Standalone Agents any job starts will be delayed that exceed the process limit.
- For an Agent Cluster the process limit can be configured for the Director Agent limiting the number of overall processes executed in parallel with any Subagents.
- Configuration
- The process limit is specified with the configuration of a Standalone Agent and Agent Cluster (Director Agent) that is created and updated from REST calls to the Controller.
- Standalone Agent: a single setting is used to specify the process limit.
- Cluster Agent: A setting is used to specify the process limit for the active Director Agent.
- If no process limit is specified at the given level then the number of parallel processes is unlimited.
Delimitation
- Process limits for Subagent Clusters are made available from
JS-2109.