Files
pezkuwi-subxt/substrate/frame/scheduler
georgepisaltu 9346019dad Add retry mechanics to pallet-scheduler (#3060)
Fixes #3014 

This PR adds retry mechanics to `pallet-scheduler`, as described in the
issue above.

Users can now set a retry configuration for a task so that, in case its
scheduled run fails, it will be retried after a number of blocks, for a
specified number of times or until it succeeds.

If a retried task runs successfully before running out of retries, its
remaining retry counter will be reset to the initial value. If a retried
task runs out of retries, it will be removed from the schedule.

Tasks which need to be scheduled for a retry are still subject to weight
metering and agenda space, same as a regular task. Periodic tasks will
have their periodic schedule put on hold while the task is retrying.

---------

Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Co-authored-by: command-bot <>
2024-02-16 10:59:10 +00:00
..
2023-09-04 12:02:32 +03:00

Scheduler

A module for scheduling dispatches.

Overview

This module exposes capabilities for scheduling dispatches to occur at a specified block number or at a specified period. These scheduled dispatches may be named or anonymous and may be canceled.

NOTE: The scheduled calls will be dispatched with the default filter for the origin: namely frame_system::Config::BaseCallFilter for all origin except root which will get no filter. And not the filter contained in origin use to call fn schedule.

If a call is scheduled using proxy or whatever mecanism which adds filter, then those filter will not be used when dispatching the schedule call.

Interface

Dispatchable Functions

  • schedule - schedule a dispatch, which may be periodic, to occur at a specified block and with a specified priority.
  • cancel - cancel a scheduled dispatch, specified by block number and index.
  • schedule_named - augments the schedule interface with an additional Vec<u8> parameter that can be used for identification.
  • cancel_named - the named complement to the cancel function.

License: Apache 2.0