This topic was automatically generated from Slack. You can find the original thread here.
Hey. I have an issue and not sure whether this is a bug or I don’t quite understand it. I configured a workflow to run only 1 execution every 1 minute (See screenshot 1). However, In some cases it fires multiple times within 60 seconds and then after this it gets stalled correctly for one minute (see screenshot 2). Is this a bug? See executions at 09:37:24 and 09:37:55
In case anyone finds this in the future. Here is the rest of the convo of the support ticket
Pipedream controls the frequency of workflow invocations over a specified time interval using fixed window throttling. For example, if the execution rate limit is set at 1 execution every 5 seconds, this means that your workflow will be invoked no more than once within a fixed 5-second time box. This doesn’t mean that executions will occur 5 seconds apart.
Fixed window throttling is a rate-limiting method where time is divided into fixed intervals (windows). Within each window, you count incoming requests:
If the count is below the limit: The request is allowed.
If the count meets or exceeds the limit: Additional requests are rejected until the window resets.
At the start of each new fixed interval, the counter resets, but may allow bursts at the boundaries when one window ends and another begins.
Assume that the window starts and ends at :10 seconds of each minute (1 request per minute). If a request came through at 0:09, and then another at 0:11, technically the second request would be allowed. Any additional requests between 0:11 and 1:09 would be queued, and dequeued at 1:10.
For your simple use case, setting the execution limit to 1 every 2 minutes should be fine.