How Does TaskRetry Work?

How Does TaskRetry Work?

book

Article ID: KB0090094

calendar_today

Updated On:

Products Versions
TIBCO DataSynapse GridServer -
Not Applicable -

Description

Resolution:
How does the scheduler retry or reschedule tasks that exceed the max time set for the task?

The retry/reschedule depends mainly upon three parameters: The task max time, the scheduler interval and the Engine heartbeat.

The moment the task is picked up by the Engine, the start time is marked. The scheduler will wake up at least in every scheduler interval seconds to check for any tasks in progress that have exceeded the max time. If "Reshcedule on Timeout" is false (default), the schduler will log off Engines that have timed out, causing the tasks to be retried immediately. The tasks are placed at the top of its session's queue. Note that the Engine on which the task is running will not restart itself until the next message send, typically a heartbeat. If true, those tasks will be redundantly rescheduled, and Engines that have timed out will be allowed to continue; the task is complete as soon as any Engine completes it.

So in general, the maximum time is the Task Max Time plus the Poll Period of Service Rescheduler. For instance, if Task Max Time = 50 sec and Poll Period= 60 sec, best = 50 secs and worst = 110 secs. However, it could take up to the Engine Heartbeat for the Engine on which a task was retried to log back in.

Issue/Introduction

How Does TaskRetry Work?