Cisco Cisco Workload Automation 6.3 User Guide

Page of 412
319
 
Controlling Production
Queues in CWA
You can expand or collapse parts of the queue tree using the collapsed and expanded signs, the same way you use the 
Navigator pane of the CWA Client. Each queue in the hierarchy can contain jobs, job groups and other queues. 
A parent queue displays above and to the left of its children on the Queues pane. All queues to the left of a queue are 
parent queues. A child queue is nested below and to the right of a queue. All queues to the right of the system queue 
are child queues. Child queues are restricted by the limits and priority level of their parents.
The queue record also shows each queue’s limit and priority level. The limit defines how many jobs can run from that 
queue at the same time. The priority indicates which queue takes precedence when the Queue Manager searches for 
the next job to run.
Queue Filters
Queue filters determine how jobs are assigned to queues when they are ready to run. Queue filters include and/or 
exclude jobs based on the job’s properties. When a job is ready to run, the queue manager uses the filters to find a queue 
for the job. If there is more than one queue that the job can be assigned to, the queue with the highest priority is chosen. 
If there is no queue that matches the job’s properties, the job will enter the system queue and will be evaluated with the 
lowest priority.
How Jobs are Assigned to Queues
The queue manager is responsible for assigning jobs to queues. You cannot directly assign a job to a queue in the job 
definition, but you can set up queues so that you control which jobs get assigned to them. By setting up queues to accept 
jobs based on their job class (using job class queue filters), you can indirectly assign jobs to queues by directly assigning 
them to a job class in the job definition. 
When a job is ready to run, the queue manager begins its search through the queue hierarchy to find the most appropriate 
queue to assign the job to. Starting one level below the system queue, in priority order (high to low) it chooses the first 
match of job properties with queue filters, then moves to the next level, if any. This process is repeated until there are no 
more levels, or until there are no more queues that will accept the job. If a job cannot be matched with any queue, it is 
added to the system queue.
For example, the figure below shows how four jobs are assigned to four different queues. The second level of queues 
uses queue filters that accept either scheduled jobs or unscheduled jobs. The third level, under the queue that accepts 
scheduled jobs only (Queue A), has three queues that accept jobs based on their job class. There is a third catch-all 
queue (Queue E) in this level that accepts all scheduled jobs that are not of the Payroll or Accounting job class. Jobs can 
be assigned to the parent if no child queue qualifies.
The following table describes the job assignments:
How the Queue Manager Selects the Next Job to Run
The queue manager determines which job to run next according to a series of checks. The following list describes each 
check in order.
Job
Queue
Reason
Job A
Queue D
Job A is a scheduled job that is assigned to the Accounting job class. It qualified for Queue 
A
 before reaching its final destination Queue D.
Job B
Queue C
Job B is a scheduled job that is assigned to the Payroll job class. It is also qualified for 
Queue A before reaching its final destination Queue C.
Job C
Queue B
Queue B is the only queue that accepts unscheduled jobs.
Job D
Queue E
Job D’s job class doesn’t match with Queue C or Queue DQueue A isn’t chosen because 
Queue E has a higher priority than Queue A. If Queue E did not exist, Job D would be 
assigned to Queue A, because Queue A only requires that the job is scheduled.