Skip to main content
Question

If I use the process composer to connect multiple task bots, can my flow be interrupted?


Uzumaki
Forum|alt.badge.img+7
  • Navigator | Tier 3
  • 18 replies

If I were to use the process composer to connect multiple task bots, is it possible for another bot with a higher priority to interrupt the queue and trigger in-between the task bots in my process composer flow?

5 replies

Lu.Hunnicutt
Pathfinder Community Team
Forum|alt.badge.img+11
  • Pathfinder Community Team
  • 66 replies
  • March 25, 2025

Hi! Let me tag some folks that may be able to support you here.

@Shreya.Kumar 

@Aaron.Gleason 

@partha1309 

@Ganesh Bhat 


Uzumaki
Forum|alt.badge.img+7
  • Author
  • Navigator | Tier 3
  • 18 replies
  • March 27, 2025

bump.


Forum|alt.badge.img+4
Uzumaki wrote:

If I were to use the process composer to connect multiple task bots, is it possible for another bot with a higher priority to interrupt the queue and trigger in-between the task bots in my process composer flow?

Below are my professional experience feedback handling process workflow for a quite time now. 

Process workflow will always be in sequence, this is how it is designed. To answer your question it is a No. 

Example: 

  • Process 1: Step 1 > Step 2> Step 3 (High priority) > Step 4>Step 5

  • Process 2: Entirely Medium priority steps

  • Both are running on the same machine or bot runner pool

  • Once Step 3 of Process 1 enters the queue, Control Room will prioritize it over Medium-priority tasks in Process 2 (or even other Medium steps from Process 1).

If you have multiple workflows (e.g., Process 1 and Process 2) assigned to the same bot runner (machine):

The Control Room scheduler checks the priority of the queued tasks.

A High priority bot (like Step 3 in Process 1) will be pulled from the queue and executed first, even if it was added later than a Medium priority bot from Process 2.

So essentially, priority comes into play only when bots are waiting to be assigned to an available machine, not mid-process.

Hope this helps!

 


Uzumaki
Forum|alt.badge.img+7
  • Author
  • Navigator | Tier 3
  • 18 replies
  • March 31, 2025
jeven.delacruz wrote:
Uzumaki wrote:

If I were to use the process composer to connect multiple task bots, is it possible for another bot with a higher priority to interrupt the queue and trigger in-between the task bots in my process composer flow?

Below are my professional experience feedback handling process workflow for a quite time now. 

Process workflow will always be in sequence, this is how it is designed. To answer your question it is a No. 

Example: 

  • Process 1: Step 1 > Step 2> Step 3 (High priority) > Step 4>Step 5

  • Process 2: Entirely Medium priority steps

  • Both are running on the same machine or bot runner pool

  • Once Step 3 of Process 1 enters the queue, Control Room will prioritize it over Medium-priority tasks in Process 2 (or even other Medium steps from Process 1).

If you have multiple workflows (e.g., Process 1 and Process 2) assigned to the same bot runner (machine):

The Control Room scheduler checks the priority of the queued tasks.

A High priority bot (like Step 3 in Process 1) will be pulled from the queue and executed first, even if it was added later than a Medium priority bot from Process 2.

So essentially, priority comes into play only when bots are waiting to be assigned to an available machine, not mid-process.

Hope this helps!

 

So you’re saying that if I have a process with 5 medium priority task bots, a high priority bot could trigger in between my sequence of medium task bots?


Forum|alt.badge.img+4

 

Uzumaki wrote:
jeven.delacruz wrote:
Uzumaki wrote:

If I were to use the process composer to connect multiple task bots, is it possible for another bot with a higher priority to interrupt the queue and trigger in-between the task bots in my process composer flow?

Below are my professional experience feedback handling process workflow for a quite time now. 

Process workflow will always be in sequence, this is how it is designed. To answer your question it is a No. 

Example: 

  • Process 1: Step 1 > Step 2> Step 3 (High priority) > Step 4>Step 5

  • Process 2: Entirely Medium priority steps

  • Both are running on the same machine or bot runner pool

  • Once Step 3 of Process 1 enters the queue, Control Room will prioritize it over Medium-priority tasks in Process 2 (or even other Medium steps from Process 1).

If you have multiple workflows (e.g., Process 1 and Process 2) assigned to the same bot runner (machine):

The Control Room scheduler checks the priority of the queued tasks.

A High priority bot (like Step 3 in Process 1) will be pulled from the queue and executed first, even if it was added later than a Medium priority bot from Process 2.

So essentially, priority comes into play only when bots are waiting to be assigned to an available machine, not mid-process.

Hope this helps!

 

So you’re saying that if I have a process with 5 medium priority task bots, a high priority bot could trigger in between my sequence of medium task bots?

No, priority is only used to determine which task to execute once it is in the Control Room queue and waiting to be assigned to an available machine.

Below is another scenario that can give clarity on your end, hope it helps. 

Scenario Setup:
Process X (Medium Priority – Default Steps):
Step 1: Task X1 (Medium)

Step 2: Task X2 (Medium)

Step 3: Task X3 (Medium)

Process Y (Mixed Priority Steps):
Step A: Task Y1 (Medium)

Step B: Task Y2 (High)

Step C: Task Y3 (Medium)

Both processes are assigned to the same bot runner pool.

---
 

Scenario 1: Regular Scenario

  1. Process Y Begins:
  • The scheduler assigns Process Y’s first step, Step A (Medium), to a bot runner.
  • Task Y1 starts executing.
  1. After Step A Completes:
  • The process then moves to Step B (High).
  • At this moment, if the bot runner becomes available (or if there’s a brief gap between tasks), the scheduler sees that Task Y2 is high priority.
  • Key Point: Even though Task Y2 is high priority, it won’t interrupt Task Y1 if that step was already running. Instead, its high priority will only affect the moment it’s scheduled for execution compared to other waiting tasks.
  1. Continuing to Step C:
  • After Task Y2 (high) finishes, Process Y proceeds to Step C (Medium).
  • Again, Task Y3 will be queued and executed in sequence.
  • The mixed priorities within Process Y only affect the order in which steps are assigned if they are waiting in the queue alongside steps from other processes.

Scenario 2: Competing Processes
Assume that both Process X and Process Y are waiting to be executed:

  1. Queue Composition:
  • Process X’s first step (Task X1) is Medium.
  • Process Y’s first step (Task Y1) is Medium.
  1. Initial Scheduling:
  • The scheduler may pick either one based on when they were queued.
  • Suppose Process X’s Task X1 is picked up first.
  1. Steps Comparison:
  • Once Process X is running and Process Y’s Task Y1 is still waiting, they both are medium.
  • However, if Process Y eventually starts and completes Task Y1, its next step, Task Y2 (High), will be compared with any other medium-priority steps (from Process X or elsewhere).
  • In this case, because Task Y2 is high priority, the scheduler will favor it over any medium-priority tasks waiting in the queue.

Scenario 3: Multiple Requests for Process Y
 

  1. Queue Composition:
  • Request 1: Task Y1 (Medium) is added to the queue.
  • Request 2: Task Y1 (Medium) is added to the queue.
  • At this point, both tasks have the same (medium) priority.
  1. Processing the First Steps:
  • A bot runner picks up Request 1 – Task Y1 (Medium) and starts processing.
  • Meanwhile, Request 2 – Task Y1 (Medium) remains queued.
  1. Advancing to Mixed Priorities:
  • After Request 1 – Task Y1 completes, Process Y for Request 1 moves to Task Y2 (High Priority).
  • Now the queue contains:
    Request 2 – Task Y1 (Medium)
    Request 1 – Task Y2 (High)
  • The scheduler will select Request 1 – Task Y2 first because it has high priority—even though Request 2’s Task Y1 has been waiting longer.
  1. Completing Request 1:
  • Once Request 1 – Task Y2 (High) finishes, Process Y for Request 1 moves to Task Y3 (Medium).
  • The queue now has:
    Request 2 – Task Y1 (Medium)
    Request 1 – Task Y3 (Medium)
  • With both queued tasks at medium priority, the scheduler will follow the standard order execution.
  1. Processing Request 2:
  • After handling Request 1’s medium task (Y3), the scheduler picks up Request 2 – Task Y1 (Medium).
  • When Request 2 completes Task Y1, it moves to Task Y2 (High).
  • If at this point other medium tasks are still queued, Request 2’s Task Y2 (High) will jump ahead in the queue due to its higher priority.
  • Finally, Request 2 proceeds to Task Y3 (Medium) after Task Y2 completes.

Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings