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
Add configurable, durable HTTP failure retries to the durable-functions v4 provider in packages/azure-functions-durable. This is the Node v4 follow-up to Azure/azure-functions-durable-extension#1984; HTTP 202 polling and generic activity retry APIs do not provide this capability today.
Current behavior
Checked durable-functions@4.0.0-beta.1 and main at 254d9c1c8bac93ef6bb29f6bb79204bab09afa1b:
CallHttpOptions has no HTTP retry policy or retryable-status-code selection.
callHttp() builds a request and schedules the built-in polling sub-orchestration without retry options.
The built-in HTTP path schedules activities without a retry policy and repeats only for HTTP 202 responses. Responses such as 429, 500, and 503 are returned rather than retried.
Unlike the v3 SDK, v4 executes HTTP in worker-side built-ins. Forwarding a field to the extension's existing HTTP action is therefore insufficient; the worker implementation must apply the policy.
Acceptance Criteria
Expose HTTP-specific retry configuration on callHttp, including first retry interval, maximum attempts, backoff coefficient, maximum retry interval, retry timeout, and retryable HTTP status codes.
Carry the configuration through the request payload and apply it through durable scheduling in the built-in HTTP path, including retryable transport failures.
Define and document status-code defaults consistent with .NET HttpRetryOptions (an omitted/empty status-code list retries 4xx/5xx responses when a retry policy is supplied).
Preserve existing behavior when retry options are omitted, and keep HTTP 202 polling distinct from failure retries.
Add coverage for retry-then-success, exhausted attempts, excluded status codes, backoff/timeout limits, replay, and interaction with 202 polling.
Document usage and any intentional differences from .NET HTTP retry semantics.
Add configurable, durable HTTP failure retries to the
durable-functionsv4 provider inpackages/azure-functions-durable. This is the Node v4 follow-up to Azure/azure-functions-durable-extension#1984; HTTP 202 polling and generic activity retry APIs do not provide this capability today.Current behavior
Checked
durable-functions@4.0.0-beta.1andmainat254d9c1c8bac93ef6bb29f6bb79204bab09afa1b:CallHttpOptionshas no HTTP retry policy or retryable-status-code selection.callHttp()builds a request and schedules the built-in polling sub-orchestration without retry options.Unlike the v3 SDK, v4 executes HTTP in worker-side built-ins. Forwarding a field to the extension's existing HTTP action is therefore insufficient; the worker implementation must apply the policy.
Acceptance Criteria
callHttp, including first retry interval, maximum attempts, backoff coefficient, maximum retry interval, retry timeout, and retryable HTTP status codes.HttpRetryOptions(an omitted/empty status-code list retries 4xx/5xx responses when a retry policy is supplied).Related