You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
currently, when starting the canister, it might catch up on jobs, resulting in reverts.
Example: we scan 100 blocks, and job a should be executed every 10 blocks. It was executed in blocks 10, 20, 30, 40, resulting in 4 logs that order new executions. The canister would currently try to execute the job 4 times because it does not check if the execution has taken place. Instead of starting a timer each time, it should keep a list like this:
job -> nextExecutionTime
When scanning the 4 logs, nextExecutionTime is updated 4 times without execution. Only when the current block is reached should we scan for which job to execute.
The text was updated successfully, but these errors were encountered:
currently, when starting the canister, it might catch up on jobs, resulting in reverts.
Example: we scan 100 blocks, and job a should be executed every 10 blocks. It was executed in blocks 10, 20, 30, 40, resulting in 4 logs that order new executions. The canister would currently try to execute the job 4 times because it does not check if the execution has taken place. Instead of starting a timer each time, it should keep a list like this:
job -> nextExecutionTime
When scanning the 4 logs, nextExecutionTime is updated 4 times without execution. Only when the current block is reached should we scan for which job to execute.
The text was updated successfully, but these errors were encountered: