git stQueues (QUEUE)

Executable objects are always processed within a Queue object. Queues are virtual spaces in which processes are submitted for execution. They allow you to sort out, separate and break out these processes in different lanes. They determine the maximum number tasks that can run in parallel and their priorities. For this reason, Queues are basic load balancing tools. Although they are active objects, Queues cannot be executed.

This page includes the following:

Overview

You have two possibilities to assign a Queue to an executable object:

If an object has no specific Queue, the system automatically uses the CLIENT Queue to process it.

Queues can be assigned to the following objects:

There is no limit to the number of objects that you can assign to a Queue object.

Queue Status

Queues can have the following status:

Right-click a Queue to display the following options:

Defining Queues

A Queue object definition is made up of the following pages:

Note: All the Queues in a Client are visible both in the Administration perspective and in the Process Monitoring perspective. In Client 0, the list of queues shows all Queue objects in all Clients in the system.

To Define the Queue-Specific Settings

  1. Click Add Object on the toolbar.
  2. On the Add Object dialog, select Queue. For more information, see Adding Objects.
  3. Open to the Queue tab on the left navigation pane. On this page, you define many of the most relevant properties of the object.
  4. In the Default Settings section, you specify the standard behavior of the Queue.

    • Maximum Slots

      Maximum number of tasks that can run simultaneously in this Queue.

      When an object starts, the Queue slot is reserved before any other settings are checked. Sync objects, available resources, maximum number of parallel tasks allowed, Agent, and so on are considered afterward.

      • Default value: unlimited
      • Allowed values: 1 to 100000

      Important! Entering 0 is not allowed, it can only set by modifying the Queue.

    • Priority

      Objects are processed based on their priority.

      • Default value: 200
      • Allowed values: 0 to 255

      Notes:

      • The priority that is defined in the Queue object is checked before the priority define in the task. If two tasks have the same Queue priority, the priority that is specified in the task applies.
      • The settings in the Exception section might affect the priority of a task and overrule this definition.
    • Time Zone

      You can assign a Time Zone (TZ) to this Queue. Time Zone objects affect the time calculation.

  5. In the Exceptions section, specify periods of time in which the default Queue settings do not apply. You can also define specific parameters for those periods.

    1. In From/To specify the period in hours and minutes you do not want the default settings to apply.
    2. Optionally, select a Calendar to determine the days on which the default settings do not apply.
    3. Optionally, select the Calendar Event (if available) that further restricts the days on which the default settings do not apply. See Combo Boxes.
    4. Enter the settings that should apply instead of the default ones, namely the maximum slots, and priority.

      You can also add a Description that helps users recognize this description later on. You can enter up to 255 characters.

      Important! The order of the exceptions in the table is relevant. The list is processed from top to bottom, that is, the first applicable exception is selected. You can arrange their order using the arrow up/down buttons. For more information, see Tables On Pages.

    5. To consider the estimated runtime for all active tasks in the Queue when an object starts, click the Consider ERT checkbox. This checkbox is only available if the following is true:

      • Maximum Slots are defined
      • One or more exceptions are added.

      For more information, see Considering ERT in Queue Objects

  6. Save your changes.

Priority Management

Queues provide priority management; this process assigns a default priority to a task. This priority can increase over time, altering priorities over processes in other queues. Operators can manually change the priority of a process on the fly.

Capping Parallel Executions

A Queue has a certain number of available slots. You can cap the number of parallel executions. If a Queue has 10 slots and you submit 15 tasks, 10 will execute while 5 will wait. If necessary, you can bypass Queue restrictions later, when objects have been executed but are in a waiting status (Waiting for Queue Slot). In these cases, right-click the task in the Process Monitoring perspective and select Ignore Queue Limit. The task starts immediately.

See also: