Skip to content

Retry policy for queue triggered Azure functions #16512

Closed

Description

Query/Question
Hi

I am assigned the task of configuring a custom retry policy for our queue triggered Azure functions, with the aim of becoming resilient to temporary errors. I started by configuring an exponential backoff policy in the ARM template of the queue itself, but much to my surprise this does not appear to have any effect on the function execution. It appears Azure functions consume messages independently of the settings on the queue, which means a failed message is retried immediately without giving the underlying services a chance to recover from temporary issues.

I have come across a 3 year old Github post which suggest Azure functions does not provide means for configuring the retry policy: Azure/azure-functions-host#2192. I was much surprised by this finding, since this feature is so vital/fundamental that I would naturally assume Azure functions to provide a solution.

I have been unable to find any documentation on the topic other than the github post mentioned above. Can you confirm that Azure functions still does not provide a configurable retry policy or point me in the direction of relevant documentation?

Why is this not a Bug or a feature Request?
This might be a bug or a feature request, but I have no way of knowing since I am unable to find documentation on how retries are supposed to work.

Setup (please complete the following information if applicable):
Java Azure functions, runtime 3.0

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

  • Query Added
  • Setup information Added
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    Functionscustomer-reportedIssues that are reported by GitHub users external to the Azure organization.needs-author-feedbackWorkflow: More information is needed from author to address the issue.questionThe issue doesn't require a change to the product in order to be resolved. Most issues start as thattracking-external-issueThe issue is caused by external problem (e.g. OS) - nothing we can do to fix it directly

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions